Nuprl Lemma : l-ordered-reorder
∀[A:Type]
  ∀R:A ⟶ A ⟶ 𝔹. ∀L:A List.
    (Trans(A;x,y.↑R[x;y])
    ⇒ (∀x∈L.(∀y∈L.(¬↑R[x;y]) ⇒ (↑R[y;x])))
    ⇒ (∃L':A List. (l-ordered(A;x,y.↑R[x;y];L') ∧ permutation(A;L;L'))))
Proof
Definitions occuring in Statement : 
l-ordered: l-ordered(T;x,y.R[x; y];L), 
permutation: permutation(T;L1;L2), 
l_all: (∀x∈L.P[x]), 
list: T List, 
trans: Trans(T;x,y.E[x; y]), 
assert: ↑b, 
bool: 𝔹, 
uall: ∀[x:A]. B[x], 
so_apply: x[s1;s2], 
all: ∀x:A. B[x], 
exists: ∃x:A. B[x], 
not: ¬A, 
implies: P ⇒ Q, 
and: P ∧ Q, 
function: x:A ⟶ B[x], 
universe: Type
Definitions unfolded in proof : 
uall: ∀[x:A]. B[x], 
all: ∀x:A. B[x], 
member: t ∈ T, 
so_lambda: λ2x.t[x], 
implies: P ⇒ Q, 
prop: ℙ, 
so_lambda: λ2x y.t[x; y], 
so_apply: x[s1;s2], 
so_apply: x[s], 
and: P ∧ Q, 
exists: ∃x:A. B[x], 
cand: A c∧ B, 
true: True, 
iff: P ⇐⇒ Q, 
rev_implies: P ⇐ Q, 
subtype_rel: A ⊆r B, 
guard: {T}, 
or: P ∨ Q, 
uimplies: b supposing a, 
uiff: uiff(P;Q), 
sq_type: SQType(T), 
assert: ↑b, 
ifthenelse: if b then t else f fi , 
btrue: tt, 
trans: Trans(T;x,y.E[x; y]), 
squash: ↓T, 
top: Top
Lemmas referenced : 
list_induction, 
trans_wf, 
assert_wf, 
l_all_wf2, 
l_member_wf, 
not_wf, 
exists_wf, 
list_wf, 
l-ordered_wf, 
permutation_wf, 
nil_wf, 
l-ordered-nil-true, 
permutation-nil-iff, 
true_wf, 
equal-wf-base, 
l_all_iff, 
cons_wf, 
cons_member, 
equal_wf, 
assert_witness, 
all_wf, 
l-ordered-decomp, 
append_wf, 
filter_wf5, 
bnot_wf, 
bool_wf, 
l-ordered-append, 
l-ordered-filter, 
l-ordered-cons, 
member_filter_2, 
assert_of_bnot, 
member-permutation, 
and_wf, 
assert_elim, 
subtype_base_sq, 
bool_subtype_base, 
permutation-cons, 
squash_wf, 
iff_weakening_equal, 
length_wf, 
length-append
Rules used in proof : 
sqequalSubstitution, 
sqequalTransitivity, 
computationStep, 
sqequalReflexivity, 
isect_memberFormation, 
lambdaFormation, 
cut, 
thin, 
introduction, 
extract_by_obid, 
sqequalHypSubstitution, 
isectElimination, 
hypothesisEquality, 
sqequalRule, 
lambdaEquality, 
functionEquality, 
cumulativity, 
applyEquality, 
functionExtensionality, 
because_Cache, 
hypothesis, 
setElimination, 
rename, 
setEquality, 
dependent_functionElimination, 
productEquality, 
independent_functionElimination, 
dependent_pairFormation, 
natural_numberEquality, 
independent_pairFormation, 
addLevel, 
productElimination, 
baseClosed, 
voidEquality, 
voidElimination, 
allFunctionality, 
promote_hyp, 
inrFormation, 
impliesFunctionality, 
independent_isectElimination, 
universeEquality, 
inlFormation, 
unionElimination, 
dependent_set_memberEquality, 
applyLambdaEquality, 
equalityTransitivity, 
equalitySymmetry, 
instantiate, 
imageElimination, 
imageMemberEquality, 
isect_memberEquality
Latex:
\mforall{}[A:Type]
    \mforall{}R:A  {}\mrightarrow{}  A  {}\mrightarrow{}  \mBbbB{}.  \mforall{}L:A  List.
        (Trans(A;x,y.\muparrow{}R[x;y])
        {}\mRightarrow{}  (\mforall{}x\mmember{}L.(\mforall{}y\mmember{}L.(\mneg{}\muparrow{}R[x;y])  {}\mRightarrow{}  (\muparrow{}R[y;x])))
        {}\mRightarrow{}  (\mexists{}L':A  List.  (l-ordered(A;x,y.\muparrow{}R[x;y];L')  \mwedge{}  permutation(A;L;L'))))
Date html generated:
2018_05_21-PM-07_39_58
Last ObjectModification:
2017_07_26-PM-05_14_08
Theory : general
Home
Index