Nuprl Definition : find-hull

find-hull(g;xs) ==
  let L ⟵ [2, ||xs||)
  in eager-accum(hs,k.let p,q find_transitions(λx,y. xy;hs) 
                      in if isl(p) ∧b isl(q)
                         then hs
                         else eval outr(p) in
                              eval outr(q) in
                                if x <y
                                then let as ⟵ firstn(x 1;hs)
                                     in let bs ⟵ nth_tl(y;hs)
                                        in as [k bs]
                                else let as ⟵ firstn((x y) 1;nth_tl(y;hs))
                                     in [k as]
                                fi 
                         fi ;[0; 1];L)



Definitions occuring in Statement :  left-test: jk from-upto: [n, m) eager-accum: eager-accum(x,a.f[x; a];y;l) find_transitions: find_transitions(f;L) firstn: firstn(n;as) length: ||as|| nth_tl: nth_tl(n;as) append: as bs cons: [a b] nil: [] band: p ∧b q callbyvalueall: callbyvalueall callbyvalue: callbyvalue outr: outr(x) ifthenelse: if then else fi  isl: isl(x) lt_int: i <j lambda: λx.A[x] spread: spread def subtract: m add: m natural_number: $n
Definitions occuring in definition :  from-upto: [n, m) length: ||as|| eager-accum: eager-accum(x,a.f[x; a];y;l) spread: spread def find_transitions: find_transitions(f;L) lambda: λx.A[x] left-test: jk band: p ∧b q isl: isl(x) callbyvalue: callbyvalue outr: outr(x) ifthenelse: if then else fi  lt_int: i <j append: as bs callbyvalueall: callbyvalueall firstn: firstn(n;as) add: m subtract: m nth_tl: nth_tl(n;as) cons: [a b] natural_number: $n nil: []
FDL editor aliases :  find-hull

Latex:
find-hull(g;xs)  ==
    let  L  \mleftarrow{}{}  [2,  ||xs||)
    in  eager-accum(hs,k.let  p,q  =  find\_transitions(\mlambda{}x,y.  k  L  xy;hs) 
                                            in  if  isl(p)  \mwedge{}\msubb{}  isl(q)
                                                  then  hs
                                                  else  eval  x  =  outr(p)  in
                                                            eval  y  =  outr(q)  in
                                                                if  x  <z  y
                                                                then  let  as  \mleftarrow{}{}  firstn(x  +  1;hs)
                                                                          in  let  bs  \mleftarrow{}{}  nth\_tl(y;hs)
                                                                                in  as  @  [k  /  bs]
                                                                else  let  as  \mleftarrow{}{}  firstn((x  -  y)  +  1;nth\_tl(y;hs))
                                                                          in  [k  /  as]
                                                                fi 
                                                  fi  ;[0;  1];L)



Date html generated: 2017_10_02-PM-06_52_13
Last ObjectModification: 2017_08_06-PM-07_31_53

Theory : euclidean!plane!geometry


Home Index