Nuprl Lemma : fpf-decompose

[A:Type]
  eq:EqDecider(A)
    [B:A  Type]
      f:a:A fp-> B[a]
        g:a:A fp-> B[a]
         a:A
          b:B[a]
           ((f  g  a : b  g  a : b  f)
            (a':A. (a' = a) supposing a'  dom(g))
            (||fpf-domain(g)|| < ||fpf-domain(f)||)) 
        supposing 0 < ||fpf-domain(f)||


Proof not projected




Definitions occuring in Statement :  fpf-single: x : v,  fpf-join: f  g,  fpf-sub: f  g,  fpf-domain: fpf-domain(f),  fpf-dom: x  dom(f),  fpf: a:A fp-> B[a],  length: ||as||,  assert: b,  uimplies: b supposing a,  uall: [x:A]. B[x],  so_apply: x[s],  all: x:A. B[x],  exists: x:A. B[x],  not: A,  and: P  Q,  less_than: a < b,  function: x:A  B[x],  natural_number: $n,  universe: Type,  equal: s = t,  deq: EqDecider(T)
Definitions :  uall: [x:A]. B[x],  all: x:A. B[x],  so_apply: x[s],  uimplies: b supposing a,  fpf-domain: fpf-domain(f),  exists: x:A. B[x],  and: P  Q,  assert: b,  fpf-dom: x  dom(f),  not: A,  member: t  T,  prop: ,  implies: P  Q,  so_lambda: x.t[x],  eqof: eqof(d),  hd: hd(l),  ge: i  j ,  le: A  B,  false: False,  pi1: fst(t),  deq-member: deq-member(eq;x;L),  reduce: reduce(f;k;as),  bfalse: ff,  ifthenelse: if b then t else f fi ,  or: P  Q,  guard: {T},  fpf-compatible: f || g,  pi2: snd(t),  cand: A c B,  fpf-ap: f(x),  fpf-single: x : v,  fpf-sub: f  g,  top: Top,  true: True,  squash: T,  btrue: tt,  uiff: uiff(P;Q),  deq: EqDecider(T),  fpf: a:A fp-> B[a],  length: ||as||,  ycomb: Y,  rev_implies: P  Q,  iff: P  Q,  decidable: Dec(P),  rev_uimplies: rev_uimplies(P;Q),  sq_type: SQType(T)
Lemmas :  fpf-split,  assert_wf,  bnot_wf,  eqof_wf,  hd_wf,  fpf-domain_wf,  length_wf,  decidable__assert,  fpf-trivial-subtype-top,  less_than_wf,  fpf-ap_wf,  fpf-sub_wf,  fpf-join_wf,  fpf-single_wf,  all_wf,  fpf-dom_wf,  not_wf,  equal_wf,  exists_wf,  fpf_wf,  deq_wf,  bor_wf,  deq-member_wf,  or_wf,  l_member_wf,  iff_transitivity,  iff_weakening_uiff,  assert_of_bor,  or_functionality_wrt_iff,  assert-deq,  assert-deq-member,  fpf-join-sub,  fpf-sub_transitivity,  and_wf,  assert_of_bnot,  uiff_transitivity,  not_functionality_wrt_uiff,  decidable-equal-deq,  fpf-single-dom-sq,  eqff_to_assert,  eqtt_to_assert,  bool_subtype_base,  subtype_base_sq,  bool_cases,  fpf-join-ap-sq,  top_wf,  true_wf,  squash_wf,  bool_wf,  assert_elim,  member_wf,  fpf-compatible-symmetry,  fpf-compatible_wf,  isect_wf,  fpf-compatible-single-iff,  fpf-sub_weakening,  deq_property,  fpf-join-dom,  length_sublist,  decidable__equal_int,  proper_sublist_length,  member-fpf-domain

\mforall{}[A:Type]
    \mforall{}eq:EqDecider(A)
        \mforall{}[B:A  {}\mrightarrow{}  Type]
            \mforall{}f:a:A  fp->  B[a]
                \mexists{}g:a:A  fp->  B[a]
                  \mexists{}a:A
                    \mexists{}b:B[a]
                      ((f  \msubseteq{}  g  \moplus{}  a  :  b  \mwedge{}  g  \moplus{}  a  :  b  \msubseteq{}  f)
                      \mwedge{}  (\mforall{}a':A.  \mneg{}(a'  =  a)  supposing  \muparrow{}a'  \mmember{}  dom(g))
                      \mwedge{}  (||fpf-domain(g)||  <  ||fpf-domain(f)||)) 
                supposing  0  <  ||fpf-domain(f)||


Date html generated: 2012_01_23-AM-11_55_39
Last ObjectModification: 2011_12_27-PM-11_20_19

Home Index