Nuprl Lemma : b_all-squash-exists-list

[A,B:Type]. ∀[as:bag(A)]. ∀[P:A ⟶ B ⟶ ℙ].
  ↓∃bs:(A × B) List. ((bag-map(λx.(fst(x));bs) as ∈ bag(A)) ∧ (∀x∈bs.↓P[fst(x);snd(x)])) 
  supposing b_all(A;as;x.↓∃y:B. P[x;y])


Proof




Definitions occuring in Statement :  b_all: b_all(T;b;x.P[x]) bag-map: bag-map(f;bs) bag: bag(T) l_all: (∀x∈L.P[x]) list: List uimplies: supposing a uall: [x:A]. B[x] prop: so_apply: x[s1;s2] pi1: fst(t) pi2: snd(t) exists: x:A. B[x] squash: T and: P ∧ Q lambda: λx.A[x] function: x:A ⟶ B[x] product: x:A × B[x] universe: Type equal: t ∈ T
Definitions unfolded in proof :  uall: [x:A]. B[x] member: t ∈ T uimplies: supposing a squash: T exists: x:A. B[x] prop: so_lambda: λ2x.t[x] so_apply: x[s1;s2] so_apply: x[s] implies:  Q subtype_rel: A ⊆B and: P ∧ Q pi1: fst(t) all: x:A. B[x] pi2: snd(t) cand: c∧ B bag-map: bag-map(f;bs) map: map(f;as) list_ind: list_ind nil: [] it: top: Top cons-bag: x.b iff: ⇐⇒ Q true: True guard: {T} rev_implies:  Q
Lemmas referenced :  bag_to_squash_list b_all_wf squash_wf exists_wf list_induction list-subtype-bag list_wf equal_wf bag_wf bag-map_wf subtype_rel_self l_all_wf l_member_wf nil_wf l_all_nil equal-wf-T-base pi1_wf pi2_wf b_all-cons sq_stable__squash cons_wf bag-map-cons true_wf cons-bag_wf iff_weakening_equal l_all_cons
Rules used in proof :  sqequalSubstitution sqequalTransitivity computationStep sqequalReflexivity isect_memberFormation introduction cut extract_by_obid sqequalHypSubstitution isectElimination thin hypothesisEquality imageElimination productElimination promote_hyp hypothesis equalitySymmetry hyp_replacement applyLambdaEquality cumulativity sqequalRule lambdaEquality applyEquality functionExtensionality rename functionEquality because_Cache independent_isectElimination productEquality lambdaFormation independent_pairEquality setElimination setEquality independent_functionElimination dependent_pairFormation voidEquality voidElimination independent_pairFormation isect_memberEquality baseClosed imageMemberEquality dependent_functionElimination equalityTransitivity equalityUniverse levelHypothesis natural_numberEquality universeEquality

Latex:
\mforall{}[A,B:Type].  \mforall{}[as:bag(A)].  \mforall{}[P:A  {}\mrightarrow{}  B  {}\mrightarrow{}  \mBbbP{}].
    \mdownarrow{}\mexists{}bs:(A  \mtimes{}  B)  List.  ((bag-map(\mlambda{}x.(fst(x));bs)  =  as)  \mwedge{}  (\mforall{}x\mmember{}bs.\mdownarrow{}P[fst(x);snd(x)])) 
    supposing  b\_all(A;as;x.\mdownarrow{}\mexists{}y:B.  P[x;y])



Date html generated: 2017_10_01-AM-08_55_22
Last ObjectModification: 2017_07_26-PM-04_37_23

Theory : bags


Home Index