Nuprl Lemma : Wmul-add-properties

[A:Type]. ∀[B:A ⟶ Type].
  ∀zero,succ:A ⟶ 𝔹.
    ((∀a:A. ((↑(succ a))  B[a] ≡ Unit))
     (∀a:A. (¬↑(zero a) ⇐⇒ B[a]))
     (∀a1,a2:A.  ((↑(zero a1))  (↑(zero a2))  (a1 a2 ∈ A)))
     (∀x,y,z:W(A;a.B[a]).
          (((x (y z)) ((x y) z) ∈ W(A;a.B[a]))
          ∧ ((x (y z)) ((x y) (x z)) ∈ W(A;a.B[a]))
          ∧ ((x (y z)) ((x y) z) ∈ W(A;a.B[a]))
          ∧ (isZero(z)  isZero(y)  (z y ∈ W(A;a.B[a])))
          ∧ (isZero(z)
             ((((x z) x ∈ W(A;a.B[a])) ∧ ((z x) x ∈ W(A;a.B[a]))) ∧ ((x z) z ∈ W(A;a.B[a])) ∧ (z ≤  x)))
          ∧ ((x ≤  y)  (((x z) ≤  (y z)) ∧ ((z x) ≤  (z y))))
          ∧ ((x <  y)  ((z x) <  (z y)))
          ∧ ((x ≤  y)  ((x z) ≤  (y z))))))


Proof




Definitions occuring in Statement :  Wmul: (w1 w2) Wadd: (w1 w2) Wzero: isZero(w) Wcmp: Wcmp(A;a.B[a];leq) W: W(A;a.B[a]) assert: b bfalse: ff btrue: tt bool: 𝔹 ext-eq: A ≡ B uall: [x:A]. B[x] infix_ap: y so_apply: x[s] all: x:A. B[x] iff: ⇐⇒ Q not: ¬A implies:  Q and: P ∧ Q unit: Unit apply: a function: x:A ⟶ B[x] universe: Type equal: t ∈ T
Definitions unfolded in proof :  uall: [x:A]. B[x] all: x:A. B[x] implies:  Q member: t ∈ T iff: ⇐⇒ Q and: P ∧ Q not: ¬A false: False so_apply: x[s] prop: rev_implies:  Q decidable: Dec(P) or: P ∨ Q subtype_rel: A ⊆B cand: c∧ B squash: T so_lambda: λ2x.t[x] true: True uimplies: supposing a guard: {T} ext-eq: A ≡ B infix_ap: y
Lemmas referenced :  assert_wf decidable__assert not_wf assert_witness equal_wf squash_wf true_wf W_wf Wadd-assoc Wadd_wf iff_weakening_equal Wmul-Wadd Wmul_wf Wmul-assoc Wzero-unique Wzero_wf Wadd-Wzero Wmul-Wzero Wzero-leq Wleq-Wadd Wleq-Wadd2 Wcmp_wf btrue_wf Wless-Wadd bfalse_wf Wleq-Wmul all_wf iff_wf ext-eq_wf unit_wf2 bool_wf
Rules used in proof :  sqequalSubstitution sqequalTransitivity computationStep sqequalReflexivity isect_memberFormation lambdaFormation cut introduction independent_pairFormation thin applyEquality functionExtensionality hypothesisEquality cumulativity hypothesis sqequalHypSubstitution independent_functionElimination voidElimination extract_by_obid isectElimination dependent_functionElimination unionElimination productElimination because_Cache sqequalRule independent_pairEquality lambdaEquality imageElimination equalityTransitivity equalitySymmetry natural_numberEquality imageMemberEquality baseClosed universeEquality independent_isectElimination axiomEquality functionEquality

Latex:
\mforall{}[A:Type].  \mforall{}[B:A  {}\mrightarrow{}  Type].
    \mforall{}zero,succ:A  {}\mrightarrow{}  \mBbbB{}.
        ((\mforall{}a:A.  ((\muparrow{}(succ  a))  {}\mRightarrow{}  B[a]  \mequiv{}  Unit))
        {}\mRightarrow{}  (\mforall{}a:A.  (\mneg{}\muparrow{}(zero  a)  \mLeftarrow{}{}\mRightarrow{}  B[a]))
        {}\mRightarrow{}  (\mforall{}a1,a2:A.    ((\muparrow{}(zero  a1))  {}\mRightarrow{}  (\muparrow{}(zero  a2))  {}\mRightarrow{}  (a1  =  a2)))
        {}\mRightarrow{}  (\mforall{}x,y,z:W(A;a.B[a]).
                    (((x  +  (y  +  z))  =  ((x  +  y)  +  z))
                    \mwedge{}  ((x  *  (y  +  z))  =  ((x  *  y)  +  (x  *  z)))
                    \mwedge{}  ((x  *  (y  *  z))  =  ((x  *  y)  *  z))
                    \mwedge{}  (isZero(z)  {}\mRightarrow{}  isZero(y)  {}\mRightarrow{}  (z  =  y))
                    \mwedge{}  (isZero(z)  {}\mRightarrow{}  ((((x  +  z)  =  x)  \mwedge{}  ((z  +  x)  =  x))  \mwedge{}  ((x  *  z)  =  z)  \mwedge{}  (z  \mleq{}    x)))
                    \mwedge{}  ((x  \mleq{}    y)  {}\mRightarrow{}  (((x  +  z)  \mleq{}    (y  +  z))  \mwedge{}  ((z  +  x)  \mleq{}    (z  +  y))))
                    \mwedge{}  ((x  <    y)  {}\mRightarrow{}  ((z  +  x)  <    (z  +  y)))
                    \mwedge{}  ((x  \mleq{}    y)  {}\mRightarrow{}  ((x  *  z)  \mleq{}    (y  *  z))))))



Date html generated: 2017_04_14-AM-07_45_09
Last ObjectModification: 2017_02_27-PM-03_16_18

Theory : co-recursion


Home Index