{ ds1,ds2:x:Id fp-Type.  (Normal(ds1)  Normal(ds2)  Normal(ds1  ds2)) }

{ Proof }



Definitions occuring in Statement :  normal-ds: Normal(ds) fpf-join: f  g fpf: a:A fp-B[a] id-deq: IdDeq Id: Id all: x:A. B[x] implies: P  Q universe: Type
Definitions :  member: t  T prop: ifthenelse: if b then t else f fi  top: Top normal-ds: Normal(ds) fpf-all: xdom(f). v=f(x)   P[x; v] implies: P  Q btrue: tt so_lambda: x.t[x] bfalse: ff all: x:A. B[x] false: False not: A or: P  Q bool: iff: P  Q unit: Unit so_apply: x[s] and: P  Q it:
Lemmas :  fpf-dom_wf assert_wf not_wf bnot_wf bool_wf iff_transitivity normal-ds_wf fpf-join-dom fpf-join_wf eqff_to_assert Id_wf eqtt_to_assert top_wf id-deq_wf fpf-trivial-subtype-top fpf-join-ap-sq assert_of_bnot fpf_wf

\mforall{}ds1,ds2:x:Id  fp->  Type.    (Normal(ds1)  {}\mRightarrow{}  Normal(ds2)  {}\mRightarrow{}  Normal(ds1  \moplus{}  ds2))


Date html generated: 2010_08_27-AM-12_03_49
Last ObjectModification: 2008_02_27-PM-09_50_01

Home Index