Nuprl Lemma : list-to-set_functionality_wrt_permutation

∀[T:Type]
  ∀eq:EqDecider(T). ∀L1,L2:T List.  (permutation(T;L1;L2) ⇒ permutation(T;list-to-set(eq;L1);list-to-set(eq;L2)))


Proof




Definitions occuring in Statement :  list-to-set: list-to-set(eq;L),  permutation: permutation(T;L1;L2),  list: T List,  deq: EqDecider(T),  uall: ∀[x:A]. B[x],  all: ∀x:A. B[x],  implies: P ⇒ Q,  universe: Type
Definitions unfolded in proof :  top: Top,  exists: ∃x:A. B[x],  satisfiable_int_formula: satisfiable_int_formula(fmla),  le: A ≤ B,  ge: i ≥ j ,  nat: ℕ,  false: False,  not: ¬A,  or: P ∨ Q,  decidable: Dec(P),  istype: istype(T),  so_apply: x[s],  so_lambda: λ2x.t[x],  subtype_rel: A ⊆r B,  guard: {T},  prop: ℙ,  rev_uimplies: rev_uimplies(P;Q),  rev_implies: P ⇐ Q,  uimplies: b supposing a,  uiff: uiff(P;Q),  eqof: eqof(d),  and: P ∧ Q,  iff: P ⇐⇒ Q,  deq: EqDecider(T),  member: t ∈ T,  implies: P ⇒ Q,  all: ∀x:A. B[x],  uall: ∀[x:A]. B[x]
Lemmas referenced :  int_formula_prop_wf,  int_term_value_constant_lemma,  int_formula_prop_le_lemma,  int_term_value_var_lemma,  int_formula_prop_eq_lemma,  int_formula_prop_not_lemma,  istype-void,  int_formula_prop_and_lemma,  itermConstant_wf,  intformle_wf,  itermVar_wf,  intformeq_wf,  intformnot_wf,  intformand_wf,  full-omega-unsat,  decidable__equal_int,  non_neg_length,  int_subtype_base,  le_wf,  set_subtype_base,  length_wf_nat,  istype-int,  l_member-iff-length-filter,  l_member_wf,  bool_wf,  subtype_rel_dep_function,  filter_wf5,  length_wf,  decidable__le,  member-permutation,  istype-universe,  deq_wf,  list_wf,  permutation_wf,  no-repeats-iff-count,  list-to-set-property,  list-to-set_wf,  assert_witness,  istype-assert,  safe-assert-deq,  permutation-iff-count1
Rules used in proof :  Error :isect_memberEquality_alt,  int_eqEquality,  Error :dependent_pairFormation_alt,  approximateComputation,  sqequalBase,  baseClosed,  intEquality,  voidElimination,  equalitySymmetry,  equalityTransitivity,  unionElimination,  Error :setIsType,  setEquality,  natural_numberEquality,  universeEquality,  instantiate,  Error :universeIsType,  Error :functionIsTypeImplies,  axiomEquality,  Error :lambdaEquality_alt,  independent_pairEquality,  Error :inhabitedIsType,  Error :equalityIstype,  applyEquality,  independent_isectElimination,  productElimination,  because_Cache,  sqequalRule,  independent_pairFormation,  independent_functionElimination,  hypothesis,  rename,  setElimination,  dependent_functionElimination,  hypothesisEquality,  thin,  isectElimination,  sqequalHypSubstitution,  extract_by_obid,  introduction,  cut,  Error :lambdaFormation_alt,  Error :isect_memberFormation_alt,  sqequalReflexivity,  computationStep,  sqequalTransitivity,  sqequalSubstitution

Latex:
\mforall{}[T:Type]
    \mforall{}eq:EqDecider(T).  \mforall{}L1,L2:T  List.
        (permutation(T;L1;L2)  {}\mRightarrow{}  permutation(T;list-to-set(eq;L1);list-to-set(eq;L2)))



Date html generated: 2019_06_20-PM-01_55_53
Last ObjectModification: 2019_06_19-AM-11_01_58

Theory : decidable!equality


Home Index