Nuprl Lemma : C_type_of_field_wf

∀[ctyp:{t:C_TYPE()| ↑C_Struct?(t)} ]. ∀[a:{c:Atom| ↑C_field_of(c;ctyp)} ].  (C_type_of_field(a;ctyp) ∈ C_TYPE())


Proof




Definitions occuring in Statement :  C_type_of_field: C_type_of_field(a;ctyp),  C_field_of: C_field_of(a;ctyp),  C_Struct?: C_Struct?(v),  C_TYPE: C_TYPE(),  assert: ↑b,  uall: ∀[x:A]. B[x],  member: t ∈ T,  set: {x:A| B[x]} ,  atom: Atom
Definitions unfolded in proof :  uall: ∀[x:A]. B[x],  member: t ∈ T,  C_type_of_field: C_type_of_field(a;ctyp),  uimplies: b supposing a,  prop: ℙ,  so_lambda: λ2x.t[x],  so_apply: x[s],  C_field_of: C_field_of(a;ctyp),  all: ∀x:A. B[x],  subtype_rel: A ⊆r B,  top: Top,  iff: P ⇐⇒ Q,  and: P ∧ Q,  implies: P ⇒ Q,  exists: ∃x:A. B[x],  int_seg: {i..j-},  lelt: i ≤ j < k,  nat: ℕ,  le: A ≤ B,  less_than: a < b,  not: ¬A,  false: False,  guard: {T},  decidable: Dec(P),  or: P ∨ Q,  satisfiable_int_formula: satisfiable_int_formula(fmla),  ge: i ≥ j ,  true: True,  squash: ↓T,  pi1: fst(t),  select: L[n],  C_Struct-fields: C_Struct-fields(v),  pi2: snd(t),  isl: isl(x),  assert: ↑b,  ifthenelse: if b then t else f fi ,  btrue: tt
Lemmas referenced :  iff_weakening_equal,  map_select,  true_wf,  squash_wf,  not_wf,  int_seg_wf,  atom_subtype_base,  int_formula_prop_eq_lemma,  int_formula_prop_less_lemma,  intformeq_wf,  intformless_wf,  decidable__lt,  map_length,  non_neg_length,  int_formula_prop_wf,  int_term_value_var_lemma,  int_term_value_constant_lemma,  int_formula_prop_le_lemma,  int_formula_prop_not_lemma,  int_formula_prop_and_lemma,  itermVar_wf,  itermConstant_wf,  intformle_wf,  intformnot_wf,  intformand_wf,  satisfiable-full-omega-tt,  decidable__le,  int_seg_properties,  select_wf,  equal-wf-T-base,  length_wf,  lelt_wf,  less_than_wf,  nat_wf,  equal_wf,  and_wf,  length_wf_nat,  map-length,  l_member-first,  subtype_rel_list,  apply-alist-cases,  top_wf,  subtype_rel_product,  pi1_wf_top,  map_wf,  assert-deq-member,  C_Struct?_wf,  C_field_of_wf,  assert_wf,  set_wf,  C_Struct-fields_wf,  atom-deq_wf,  apply-alist_wf,  unit_wf2,  C_TYPE_wf,  outl_wf
Rules used in proof :  sqequalSubstitution,  sqequalTransitivity,  computationStep,  sqequalReflexivity,  isect_memberFormation,  introduction,  cut,  setElimination,  thin,  rename,  sqequalRule,  lemma_by_obid,  sqequalHypSubstitution,  isectElimination,  hypothesis,  atomEquality,  hypothesisEquality,  because_Cache,  independent_isectElimination,  axiomEquality,  equalityTransitivity,  equalitySymmetry,  lambdaEquality,  isect_memberEquality,  dependent_functionElimination,  productEquality,  applyEquality,  lambdaFormation,  voidElimination,  voidEquality,  productElimination,  independent_functionElimination,  dependent_set_memberEquality,  independent_pairFormation,  setEquality,  substitution,  natural_numberEquality,  unionElimination,  dependent_pairFormation,  int_eqEquality,  intEquality,  computeAll,  equalityEquality,  imageElimination,  universeEquality,  imageMemberEquality,  baseClosed

Latex:
\mforall{}[ctyp:\{t:C\_TYPE()|  \muparrow{}C\_Struct?(t)\}  ].  \mforall{}[a:\{c:Atom|  \muparrow{}C\_field\_of(c;ctyp)\}  ].
    (C\_type\_of\_field(a;ctyp)  \mmember{}  C\_TYPE())



Date html generated: 2016_05_16-AM-08_48_02
Last ObjectModification: 2016_01_17-AM-09_43_42

Theory : C-semantics


Home Index