{ [T:Type]. [G:LabeledGraph(T)]. [P:T  ].
    [n:lg-size(G)]. outl(lg-search(G;x.P[x]))  n supposing P[lg-label(G;n)] 
    supposing lg-exists(G;x.P[x]) }

{ Proof }



Definitions occuring in Statement :  lg-search: lg-search(G;x.P[x]) lg-exists: lg-exists(G;x.P[x]) lg-label: lg-label(g;x) lg-size: lg-size(g) labeled-graph: LabeledGraph(T) outl: outl(x) assert: b bool: int_seg: {i..j} uimplies: b supposing a uall: [x:A]. B[x] so_apply: x[s] le: A  B function: x:A  B[x] natural_number: $n universe: Type
Definitions :  lg-exists: lg-exists(G;x.P[x]) assert: b so_apply: x[s] le: A  B outl: outl(x) lg-search: lg-search(G;x.P[x]) all: x:A. B[x] not: A member: t  T let: let ifthenelse: if b then t else f fi  implies: P  Q btrue: tt bfalse: ff prop: false: False isl: isl(x) true: True uall: [x:A]. B[x] uimplies: b supposing a exists: x:A. B[x] so_lambda: x.t[x] subtype: S  T bool: int_seg: {i..j} nat: and: P  Q iff: P  Q unit: Unit decidable: Dec(P) or: P  Q lg-label2: lg-label2(g;x) it:
Lemmas :  search_property lg-size_wf lg-label2_wf eq_int_wf search_wf int_seg_wf bool_wf iff_weakening_uiff uiff_transitivity assert_wf eqtt_to_assert assert_of_eq_int not_wf bnot_wf eqff_to_assert assert_of_bnot not_functionality_wrt_uiff decidable__le nat_wf add_wf outl_wf unit_wf lg-search_wf labeled-graph_wf

\mforall{}[T:Type].  \mforall{}[G:LabeledGraph(T)].  \mforall{}[P:T  {}\mrightarrow{}  \mBbbB{}].
    \mforall{}[n:\mBbbN{}lg-size(G)].  outl(lg-search(G;x.P[x]))  \mleq{}  n  supposing  \muparrow{}P[lg-label(G;n)] 
    supposing  lg-exists(G;x.\muparrow{}P[x])


Date html generated: 2011_08_16-PM-06_46_48
Last ObjectModification: 2011_06_18-AM-10_59_03

Home Index