Nuprl Definition : find-hull

find-hull(g;xs) ==
  let L ⟵ [2, ||xs||)
  in eager-accum(hs,k.let p,q = find_transitions(λx,y. k L xy;hs) 
                      in if isl(p) ∧b isl(q)
                         then hs
                         else eval x = outr(p) in
                              eval y = outr(q) in
                                if x <z 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: i L 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 b then t else f fi ,  isl: isl(x),  lt_int: i <z j,  lambda: λx.A[x],  spread: spread def,  subtract: n - m,  add: n + 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: i L jk,  band: p ∧b q,  isl: isl(x),  callbyvalue: callbyvalue,  outr: outr(x),  ifthenelse: if b then t else f fi ,  lt_int: i <z j,  append: as @ bs,  callbyvalueall: callbyvalueall,  firstn: firstn(n;as),  add: n + m,  subtract: n - 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