Nuprl Lemma : bag-splits-permutation

T:Type. ∀L1,L2:T List.  (permutation(T;L1;L2)  permutation(bag(T) × bag(T);bag-splits(L1);bag-splits(L2)))


Proof




Definitions occuring in Statement :  bag-splits: bag-splits(b) bag: bag(T) permutation: permutation(T;L1;L2) list: List all: x:A. B[x] implies:  Q product: x:A × B[x] universe: Type
Definitions unfolded in proof :  all: x:A. B[x] implies:  Q uall: [x:A]. B[x] member: t ∈ T so_lambda: λ2y.t[x; y] so_apply: x[s1;s2] trans: Trans(T;x,y.E[x; y]) guard: {T} prop: refl: Refl(T;x,y.E[x; y]) uimplies: supposing a so_lambda: λ2x.t[x] so_apply: x[s] append: as bs so_lambda: so_lambda(x,y,z.t[x; y; z]) top: Top so_apply: x[s1;s2;s3] bag-splits: bag-splits(b) bag-append: as bs bag-map: bag-map(f;bs)
Lemmas referenced :  permutation-invariant2 permutation_wf bag_wf bag-splits_wf_list list_wf permutation_transitivity permutation_weakening bag-splits-permutation1 list_induction cons_wf append_wf nil_wf list_ind_nil_lemma list_ind_cons_lemma equal_wf append_functionality_wrt_permutation map_wf bag-append_wf single-bag_wf pi1_wf pi2_wf permutation-map
Rules used in proof :  sqequalSubstitution sqequalTransitivity computationStep sqequalReflexivity lambdaFormation cut introduction extract_by_obid sqequalHypSubstitution isectElimination thin hypothesisEquality sqequalRule lambdaEquality productEquality cumulativity hypothesis dependent_functionElimination independent_functionElimination because_Cache independent_isectElimination universeEquality promote_hyp rename isect_memberEquality voidElimination voidEquality equalityTransitivity equalitySymmetry independent_pairEquality productElimination

Latex:
\mforall{}T:Type.  \mforall{}L1,L2:T  List.
    (permutation(T;L1;L2)  {}\mRightarrow{}  permutation(bag(T)  \mtimes{}  bag(T);bag-splits(L1);bag-splits(L2)))



Date html generated: 2017_10_01-AM-09_00_01
Last ObjectModification: 2017_07_26-PM-04_42_01

Theory : bags


Home Index