Nuprl Lemma : nim-sum-rem2

[x,y:ℕ].  (nim-sum(x;y) rem if rem 2=y rem then else 1)


Proof




Definitions occuring in Statement :  nim-sum: nim-sum(x;y) nat: uall: [x:A]. B[x] int_eq: if a=b then else d remainder: rem m natural_number: $n sqequal: t
Definitions unfolded in proof :  uall: [x:A]. B[x] member: t ∈ T all: x:A. B[x] nat: implies:  Q false: False ge: i ≥  uimplies: supposing a not: ¬A satisfiable_int_formula: satisfiable_int_formula(fmla) exists: x:A. B[x] and: P ∧ Q prop: guard: {T} int_seg: {i..j-} lelt: i ≤ j < k le: A ≤ B decidable: Dec(P) or: P ∨ Q subtype_rel: A ⊆B so_lambda: λ2x.t[x] so_apply: x[s] sq_type: SQType(T) remainder: rem m int_nzero: -o true: True nequal: a ≠ b ∈  nat_plus: + nim-sum: nim-sum(x;y) less_than: a < b squash: T uiff: uiff(P;Q) has-value: (a)↓ less_than': less_than'(a;b) bool: 𝔹 unit: Unit it: btrue: tt bfalse: ff bnot: ¬bb ifthenelse: if then else fi  assert: b label: ...$L... t iff: ⇐⇒ Q rev_implies:  Q int_upper: {i...} top: Top
Lemmas referenced :  nat_properties full-omega-unsat intformand_wf intformle_wf itermConstant_wf itermVar_wf intformless_wf istype-int int_formula_prop_and_lemma int_formula_prop_le_lemma int_term_value_constant_lemma int_term_value_var_lemma int_formula_prop_less_lemma int_formula_prop_wf ge_wf istype-less_than int_seg_properties int_seg_wf subtract-1-ge-0 decidable__equal_int subtract_wf subtype_base_sq set_subtype_base int_subtype_base intformnot_wf intformeq_wf itermSubtract_wf int_formula_prop_not_lemma int_formula_prop_eq_lemma int_term_value_subtract_lemma decidable__le decidable__lt istype-le subtype_rel_self nim_sum0_lemma div_rem_sum nequal_wf rem_bounds_1 divide_wfa add-is-int-iff multiply-is-int-iff itermAdd_wf itermMultiply_wf int_term_value_add_lemma int_term_value_mul_lemma false_wf divide_wf value-type-has-value int-value-type remainder_wfa nat_wf set-value-type le_wf nim-sum_wf eq_int_wf eqtt_to_assert assert_of_eq_int has-value_wf_base is-exception_wf eqff_to_assert bool_cases_sqequal bool_wf bool_subtype_base assert-bnot neg_assert_of_eq_int istype-nat int_seg_subtype_special int_seg_cases remainder_wf squash_wf true_wf nat_plus_wf nim-sum-0 iff_weakening_equal upper_subtype_nat istype-false nequal-le-implies zero-add add-zero rem-exact equal_wf and_wf rem_invariant less_than_wf add-commutes mul-commutes equal-wf-base
Rules used in proof :  sqequalSubstitution sqequalTransitivity computationStep sqequalReflexivity isect_memberFormation_alt introduction cut thin lambdaFormation_alt extract_by_obid sqequalHypSubstitution isectElimination hypothesisEquality hypothesis setElimination rename intWeakElimination natural_numberEquality independent_isectElimination approximateComputation independent_functionElimination dependent_pairFormation_alt lambdaEquality_alt int_eqEquality dependent_functionElimination Error :memTop,  sqequalRule independent_pairFormation universeIsType voidElimination isect_memberEquality_alt axiomSqEquality isectIsTypeImplies inhabitedIsType functionIsTypeImplies productElimination because_Cache unionElimination applyEquality instantiate equalityTransitivity equalitySymmetry applyLambdaEquality dependent_set_memberEquality_alt productIsType promote_hyp hypothesis_subsumption cumulativity intEquality equalityIstype baseClosed sqequalBase int_eqReduceFalseSq imageElimination pointwiseFunctionality baseApply closedConclusion callbyvalueReduce imageMemberEquality equalityElimination int_eqReduceTrueSq divergentSqle sqleReflexivity addEquality sqequalIntensionalEquality multiplyEquality remainderEquality hyp_replacement dependent_set_memberEquality lambdaFormation lambdaEquality isect_memberEquality voidEquality addLevel

Latex:
\mforall{}[x,y:\mBbbN{}].    (nim-sum(x;y)  rem  2  \msim{}  if  x  rem  2=y  rem  2  then  0  else  1)



Date html generated: 2020_05_20-AM-08_21_18
Last ObjectModification: 2019_12_26-PM-04_52_09

Theory : general


Home Index