Nuprl Lemma : mon_for_append

∀g:IMonoid. ∀A:Type. ∀f:A ⟶ |g|. ∀as,as':A List.
  ((For{g} x ∈ as @ as'. f[x]) = ((For{g} x ∈ as. f[x]) * (For{g} x ∈ as'. f[x])) ∈ |g|)


Proof




Definitions occuring in Statement :  mon_for: For{g} x ∈ as. f[x],  append: as @ bs,  list: T List,  infix_ap: x f y,  so_apply: x[s],  all: ∀x:A. B[x],  function: x:A ⟶ B[x],  universe: Type,  equal: s = t ∈ T,  imon: IMonoid,  grp_op: *,  grp_car: |g|
Definitions unfolded in proof :  mon_for: For{g} x ∈ as. f[x],  all: ∀x:A. B[x],  uall: ∀[x:A]. B[x],  member: t ∈ T,  so_lambda: λ2x.t[x],  prop: ℙ,  imon: IMonoid,  so_apply: x[s],  infix_ap: x f y,  implies: P ⇒ Q,  append: as @ bs,  so_lambda: so_lambda3,  so_apply: x[s1;s2;s3],  and: P ∧ Q,  squash: ↓T,  true: True,  subtype_rel: A ⊆r B,  uimplies: b supposing a,  guard: {T},  iff: P ⇐⇒ Q,  rev_implies: P ⇐ Q
Lemmas referenced :  list_induction,  list_wf,  equal_wf,  grp_car_wf,  for_wf,  grp_op_wf,  grp_id_wf,  append_wf,  list_ind_nil_lemma,  for_nil_lemma,  mon_ident,  list_ind_cons_lemma,  for_cons_lemma,  istype-universe,  imon_wf,  squash_wf,  true_wf,  subtype_rel_self,  iff_weakening_equal,  mon_assoc
Rules used in proof :  sqequalSubstitution,  sqequalRule,  sqequalReflexivity,  sqequalTransitivity,  computationStep,  lambdaFormation_alt,  cut,  thin,  introduction,  extract_by_obid,  sqequalHypSubstitution,  isectElimination,  hypothesisEquality,  lambdaEquality_alt,  functionEquality,  hypothesis,  setElimination,  rename,  because_Cache,  applyEquality,  universeIsType,  independent_functionElimination,  dependent_functionElimination,  Error :memTop,  equalitySymmetry,  productElimination,  functionIsType,  equalityIstype,  inhabitedIsType,  instantiate,  universeEquality,  imageElimination,  equalityTransitivity,  natural_numberEquality,  imageMemberEquality,  baseClosed,  independent_isectElimination

Latex:
\mforall{}g:IMonoid.  \mforall{}A:Type.  \mforall{}f:A  {}\mrightarrow{}  |g|.  \mforall{}as,as':A  List.
    ((For\{g\}  x  \mmember{}  as  @  as'.  f[x])  =  ((For\{g\}  x  \mmember{}  as.  f[x])  *  (For\{g\}  x  \mmember{}  as'.  f[x])))



Date html generated: 2020_05_20-AM-09_35_31
Last ObjectModification: 2020_01_08-PM-06_00_20

Theory : list_2


Home Index