Nuprl Lemma : Form-ext

[C:Type]
  Form(C) ≡ lbl:Atom × if lbl =a "Var" then Atom
                       if lbl =a "Const" then C
                       if lbl =a "Set" then var:Atom × Form(C)
                       if lbl =a "Equal" then left:Form(C) × Form(C)
                       if lbl =a "Member" then element:Form(C) × Form(C)
                       if lbl =a "And" then left:Form(C) × Form(C)
                       if lbl =a "Or" then left:Form(C) × Form(C)
                       if lbl =a "Not" then Form(C)
                       if lbl =a "All" then var:Atom × Form(C)
                       if lbl =a "Exists" then var:Atom × Form(C)
                       else Void
                       fi 


Proof




Definitions occuring in Statement :  Form: Form(C) ifthenelse: if then else fi  eq_atom: =a y ext-eq: A ≡ B uall: [x:A]. B[x] product: x:A × B[x] token: "$token" atom: Atom void: Void universe: Type
Definitions unfolded in proof :  uall: [x:A]. B[x] ext-eq: A ≡ B and: P ∧ Q subtype_rel: A ⊆B member: t ∈ T Form: Form(C) all: x:A. B[x] implies:  Q bool: 𝔹 unit: Unit it: btrue: tt uiff: uiff(P;Q) uimplies: supposing a ifthenelse: if then else fi  sq_type: SQType(T) guard: {T} eq_atom: =a y bfalse: ff exists: x:A. B[x] prop: or: P ∨ Q bnot: ¬bb assert: b false: False Formco_size: Formco_size(p) pi2: snd(t) pi1: fst(t) nat: so_lambda: λ2x.t[x] so_apply: x[s] has-value: (a)↓ Form_size: Form_size(p) le: A ≤ B less_than': less_than'(a;b) not: ¬A top: Top
Lemmas referenced :  Formco-ext eq_atom_wf bool_wf eqtt_to_assert assert_of_eq_atom subtype_base_sq atom_subtype_base eqff_to_assert equal_wf bool_cases_sqequal bool_subtype_base assert-bnot neg_assert_of_eq_atom Form_wf int_subtype_base Formco_size_wf subtype_partial_sqtype_base nat_wf set_subtype_base le_wf base_wf value-type-has-value int-value-type has-value_wf-partial set-value-type Formco_wf false_wf nat_properties add-nat Form_size_wf pi2_wf pi1_wf_top
Rules used in proof :  sqequalSubstitution sqequalTransitivity computationStep sqequalReflexivity isect_memberFormation independent_pairFormation universeEquality lambdaEquality sqequalHypSubstitution setElimination thin rename cut introduction extract_by_obid hypothesis isectElimination hypothesisEquality promote_hyp productElimination hypothesis_subsumption applyEquality sqequalRule dependent_pairEquality tokenEquality lambdaFormation unionElimination equalityElimination equalityTransitivity equalitySymmetry independent_isectElimination because_Cache instantiate cumulativity atomEquality dependent_functionElimination independent_functionElimination dependent_pairFormation voidElimination productEquality voidEquality dependent_set_memberEquality natural_numberEquality intEquality baseApply closedConclusion baseClosed callbyvalueAdd independent_pairEquality isect_memberEquality

Latex:
\mforall{}[C:Type]
    Form(C)  \mequiv{}  lbl:Atom  \mtimes{}  if  lbl  =a  "Var"  then  Atom
                                              if  lbl  =a  "Const"  then  C
                                              if  lbl  =a  "Set"  then  var:Atom  \mtimes{}  Form(C)
                                              if  lbl  =a  "Equal"  then  left:Form(C)  \mtimes{}  Form(C)
                                              if  lbl  =a  "Member"  then  element:Form(C)  \mtimes{}  Form(C)
                                              if  lbl  =a  "And"  then  left:Form(C)  \mtimes{}  Form(C)
                                              if  lbl  =a  "Or"  then  left:Form(C)  \mtimes{}  Form(C)
                                              if  lbl  =a  "Not"  then  Form(C)
                                              if  lbl  =a  "All"  then  var:Atom  \mtimes{}  Form(C)
                                              if  lbl  =a  "Exists"  then  var:Atom  \mtimes{}  Form(C)
                                              else  Void
                                              fi 



Date html generated: 2018_05_21-PM-10_42_20
Last ObjectModification: 2017_10_13-PM-06_58_07

Theory : PZF


Home Index