Nuprl Lemma : exact-eq-constraint-implies
∀[eqs:ℤ List List]. ∀[i:ℕ||eqs||]. ∀[j:ℕ||eqs[i]||].
  ∀ineqs:ℤ List List. ∀xs:ℤ List.
    (satisfies-integer-problem(eqs;ineqs;xs)
    ⇒ (xs[j] = if (eqs[i][j] =z 1) then -1 * eqs[i]\j ⋅ xs\j else eqs[i]\j ⋅ xs\j fi  ∈ ℤ)) 
  supposing exact-eq-constraint(eqs;i;j)
Proof
Definitions occuring in Statement : 
exact-eq-constraint: exact-eq-constraint(eqs;i;j), 
satisfies-integer-problem: satisfies-integer-problem(eqs;ineqs;xs), 
int-vec-mul: a * as, 
list-delete: as\i, 
integer-dot-product: as ⋅ bs, 
select: L[n], 
length: ||as||, 
list: T List, 
int_seg: {i..j-}, 
ifthenelse: if b then t else f fi , 
eq_int: (i =z j), 
uimplies: b supposing a, 
uall: ∀[x:A]. B[x], 
all: ∀x:A. B[x], 
implies: P ⇒ Q, 
minus: -n, 
natural_number: $n, 
int: ℤ, 
equal: s = t ∈ T
Definitions unfolded in proof : 
uall: ∀[x:A]. B[x], 
member: t ∈ T, 
uimplies: b supposing a, 
all: ∀x:A. B[x], 
implies: P ⇒ Q, 
satisfies-integer-problem: satisfies-integer-problem(eqs;ineqs;xs), 
and: P ∧ Q, 
l_all: (∀x∈L.P[x]), 
satisfies-integer-equality: xs ⋅ as =0, 
prop: ℙ, 
int_seg: {i..j-}, 
sq_stable: SqStable(P), 
lelt: i ≤ j < k, 
squash: ↓T, 
subtype_rel: A ⊆r B, 
le: A ≤ B, 
less_than': less_than'(a;b), 
false: False, 
not: ¬A, 
cand: A c∧ B, 
guard: {T}, 
bool: 𝔹, 
unit: Unit, 
it: ⋅, 
btrue: tt, 
uiff: uiff(P;Q), 
ifthenelse: if b then t else f fi , 
bfalse: ff, 
exists: ∃x:A. B[x], 
or: P ∨ Q, 
sq_type: SQType(T), 
bnot: ¬bb, 
assert: ↑b, 
top: Top, 
subtract: n - m, 
exact-eq-constraint: exact-eq-constraint(eqs;i;j), 
less_than: a < b, 
true: True, 
nequal: a ≠ b ∈ T 
Lemmas referenced : 
satisfies-integer-problem_wf, 
list_wf, 
exact-eq-constraint_wf, 
int_seg_wf, 
length_wf, 
select_wf, 
sq_stable__le, 
int-dot-select, 
int_seg_subtype_nat, 
false_wf, 
less_than_transitivity1, 
le_weakening, 
eq_int_wf, 
bool_wf, 
eqtt_to_assert, 
assert_of_eq_int, 
eqff_to_assert, 
equal_wf, 
bool_cases_sqequal, 
subtype_base_sq, 
bool_subtype_base, 
assert-bnot, 
neg_assert_of_eq_int, 
int_subtype_base, 
int-dot-mul-left, 
list-delete_wf, 
subtract_wf, 
integer-dot-product_wf, 
add-associates, 
minus-zero, 
one-mul, 
minus-one-mul-top, 
add-zero, 
zero-add, 
add-swap, 
add-commutes, 
add-mul-special, 
zero-mul, 
absval_unfold, 
lt_int_wf, 
assert_of_lt_int, 
top_wf, 
less_than_wf, 
equal-wf-T-base, 
minus-one-mul
Rules used in proof : 
sqequalSubstitution, 
sqequalTransitivity, 
computationStep, 
sqequalReflexivity, 
isect_memberFormation, 
introduction, 
cut, 
lambdaFormation, 
sqequalHypSubstitution, 
productElimination, 
thin, 
dependent_functionElimination, 
hypothesisEquality, 
hypothesis, 
extract_by_obid, 
isectElimination, 
intEquality, 
sqequalRule, 
lambdaEquality, 
axiomEquality, 
because_Cache, 
isect_memberEquality, 
equalityTransitivity, 
equalitySymmetry, 
natural_numberEquality, 
setElimination, 
rename, 
independent_isectElimination, 
independent_functionElimination, 
imageMemberEquality, 
baseClosed, 
imageElimination, 
applyEquality, 
independent_pairFormation, 
unionElimination, 
equalityElimination, 
dependent_pairFormation, 
promote_hyp, 
instantiate, 
cumulativity, 
voidElimination, 
minusEquality, 
addEquality, 
multiplyEquality, 
voidEquality, 
lessCases, 
sqequalAxiom
Latex:
\mforall{}[eqs:\mBbbZ{}  List  List].  \mforall{}[i:\mBbbN{}||eqs||].  \mforall{}[j:\mBbbN{}||eqs[i]||].
    \mforall{}ineqs:\mBbbZ{}  List  List.  \mforall{}xs:\mBbbZ{}  List.
        (satisfies-integer-problem(eqs;ineqs;xs)
        {}\mRightarrow{}  (xs[j]  =  if  (eqs[i][j]  =\msubz{}  1)  then  -1  *  eqs[i]\mbackslash{}j  \mcdot{}  xs\mbackslash{}j  else  eqs[i]\mbackslash{}j  \mcdot{}  xs\mbackslash{}j  fi  )) 
    supposing  exact-eq-constraint(eqs;i;j)
Date html generated:
2017_04_14-AM-09_04_59
Last ObjectModification:
2017_02_27-PM-03_45_03
Theory : omega
Home
Index