lg-remove(g;n) ==
  map(
tr.let lbl,in,out = tr in 
          <lbl
          , map(
x.if x 
z n then x else x - 1 fi filter(
x.(
(x =
 n));in))
          , map(
x.if x 
z n then x else x - 1 fi
                filter(
x.(
(x =
 n));out))>firstn(n;g) @ nth_tl(n + 1;g))
Definitions : 
spreadn: spread3, 
pair: <a, b>, 
map: map(f;as), 
ifthenelse: if b then t else f fi , 
le_int: i 
z j, 
subtract: n - m, 
filter: filter(P;l), 
lambda:
x.A[x], 
bnot: 
b, 
eq_int: (i =
 j), 
append: as @ bs, 
firstn: firstn(n;as), 
nth_tl: nth_tl(n;as), 
add: n + m, 
natural_number: $n
FDL editor aliases : 
lg-remove
lg-remove(g;n)  ==
    map(\mlambda{}tr.let  lbl,in,out  =  tr  in 
                    <lbl
                    ,  map(\mlambda{}x.if  x  \mleq{}z  n  then  x  else  x  -  1  fi  ;filter(\mlambda{}x.(\mneg{}\msubb{}(x  =\msubz{}  n));in))
                    ,  map(\mlambda{}x.if  x  \mleq{}z  n  then  x  else  x  -  1  fi  ;filter(\mlambda{}x.(\mneg{}\msubb{}(x  =\msubz{}  n));out))>firstn(n;g)
            @  nth\_tl(n  +  1;g))
Date html generated:
2010_08_27-PM-03_39_55
Last ObjectModification:
2010_05_06-PM-01_53_38
Home
Index