Nuprl Lemma : pairs-fpf_property

[A,B:Type].
  ∀eq1:EqDecider(A). ∀eq2:EqDecider(B). ∀L:(A × B) List.
    (no_repeats(A;fpf-domain(fpf(L)))
    ∧ (∀a:A. ((a ∈ fpf-domain(fpf(L))) ⇐⇒ ∃b:B. (<a, b> ∈ L)))
    ∧ ∀a∈dom(fpf(L)). l=fpf(L)(a)   no_repeats(B;l) ∧ (∀b:B. ((b ∈ l) ⇐⇒ (<a, b> ∈ L))))


Proof




Definitions occuring in Statement :  pairs-fpf: fpf(L) fpf-all: x∈dom(f). v=f(x)   P[x; v] fpf-domain: fpf-domain(f) no_repeats: no_repeats(T;l) l_member: (x ∈ l) list: List deq: EqDecider(T) uall: [x:A]. B[x] all: x:A. B[x] exists: x:A. B[x] iff: ⇐⇒ Q and: P ∧ Q pair: <a, b> product: x:A × B[x] universe: Type
Definitions unfolded in proof :  uall: [x:A]. B[x] all: x:A. B[x] and: P ∧ Q cand: c∧ B member: t ∈ T pairs-fpf: fpf(L) fpf-domain: fpf-domain(f) pi1: fst(t) top: Top iff: ⇐⇒ Q implies:  Q prop: rev_implies:  Q so_lambda: λ2x.t[x] so_apply: x[s] exists: x:A. B[x] squash: T pi2: snd(t) true: True fpf-all: x∈dom(f). v=f(x)   P[x; v] subtype_rel: A ⊆B uimplies: supposing a fpf-ap: f(x) eqof: eqof(d) deq: EqDecider(T) bool: 𝔹 unit: Unit it: btrue: tt uiff: uiff(P;Q) ifthenelse: if then else fi  bfalse: ff not: ¬A false: False or: P ∨ Q guard: {T} sq_type: SQType(T) bnot: ¬bb assert: b
Lemmas referenced :  list_wf deq_wf remove-repeats_property map_wf pi1_wf_top member_map l_member_wf remove-repeats_wf exists_wf equal_wf pi2_wf squash_wf true_wf assert_wf fpf-dom_wf pairs-fpf_wf subtype-fpf2 top_wf list_induction no_repeats_wf reduce_wf ifthenelse_wf insert_wf nil_wf reduce_nil_lemma no_repeats_nil reduce_cons_lemma bool_wf equal-wf-T-base no_repeats-insert bnot_wf not_wf eqof_wf uiff_transitivity eqtt_to_assert safe-assert-deq iff_transitivity iff_weakening_uiff eqff_to_assert assert_of_bnot all_wf iff_wf null_nil_lemma btrue_wf member-implies-null-eq-bfalse btrue_neq_bfalse or_wf and_wf member-insert subtype_rel_product bool_cases_sqequal subtype_base_sq bool_subtype_base assert-bnot cons_member cons_wf
Rules used in proof :  sqequalSubstitution sqequalTransitivity computationStep sqequalReflexivity isect_memberFormation lambdaFormation cut independent_pairFormation hypothesis introduction extract_by_obid sqequalHypSubstitution isectElimination thin productEquality cumulativity hypothesisEquality universeEquality sqequalRule dependent_functionElimination lambdaEquality productElimination independent_pairEquality isect_memberEquality voidElimination voidEquality allFunctionality independent_functionElimination promote_hyp dependent_pairFormation hyp_replacement equalitySymmetry applyEquality imageElimination equalityTransitivity natural_numberEquality imageMemberEquality baseClosed because_Cache independent_isectElimination setElimination rename unionElimination equalityElimination addLevel impliesFunctionality levelHypothesis inlFormation inrFormation dependent_set_memberEquality applyLambdaEquality orFunctionality instantiate

Latex:
\mforall{}[A,B:Type].
    \mforall{}eq1:EqDecider(A).  \mforall{}eq2:EqDecider(B).  \mforall{}L:(A  \mtimes{}  B)  List.
        (no\_repeats(A;fpf-domain(fpf(L)))
        \mwedge{}  (\mforall{}a:A.  ((a  \mmember{}  fpf-domain(fpf(L)))  \mLeftarrow{}{}\mRightarrow{}  \mexists{}b:B.  (<a,  b>  \mmember{}  L)))
        \mwedge{}  \mforall{}a\mmember{}dom(fpf(L)).  l=fpf(L)(a)  {}\mRightarrow{}    no\_repeats(B;l)  \mwedge{}  (\mforall{}b:B.  ((b  \mmember{}  l)  \mLeftarrow{}{}\mRightarrow{}  (<a,  b>  \mmember{}  L))))



Date html generated: 2018_05_21-PM-09_32_00
Last ObjectModification: 2018_02_09-AM-10_26_47

Theory : finite!partial!functions


Home Index