{ [A:Type]. [eq:EqDecider(A)]. [B:A  Type]. [x,y:A]. [v:B[x]]. [u:B[y]].
    uiff(x : v || y : u;v = u supposing x = y) }

{ Proof }



Definitions occuring in Statement :  fpf-single: x : v,  fpf-compatible: f || g,  uiff: uiff(P;Q),  uimplies: b supposing a,  uall: [x:A]. B[x],  so_apply: x[s],  function: x:A  B[x],  universe: Type,  equal: s = t,  deq: EqDecider(T)
Definitions :  uall: [x:A]. B[x],  so_apply: x[s],  uiff: uiff(P;Q),  fpf-compatible: f || g,  uimplies: b supposing a,  member: t  T,  and: P  Q,  prop: ,  so_lambda: x.t[x],  implies: P  Q,  all: x:A. B[x],  cand: A c B,  top: Top,  rev_implies: P  Q,  iff: P  Q,  fpf-single: x : v,  fpf-ap: f(x),  pi2: snd(t)
Lemmas :  fpf-compatible_wf,  fpf-single_wf,  fpf-compatible-singles,  assert_wf,  fpf-dom_wf,  top_wf,  deq_wf,  fpf-single-dom-sq,  eqof_wf,  iff_weakening_uiff,  uiff_inversion,  deq_property

\mforall{}[A:Type].  \mforall{}[eq:EqDecider(A)].  \mforall{}[B:A  {}\mrightarrow{}  Type].  \mforall{}[x,y:A].  \mforall{}[v:B[x]].  \mforall{}[u:B[y]].
    uiff(x  :  v  ||  y  :  u;v  =  u  supposing  x  =  y)


Date html generated: 2011_08_10-AM-08_06_44
Last ObjectModification: 2011_06_18-AM-08_25_00

Home Index