Nuprl Lemma : wilson-theorem

∀n:{i:ℤ| 1 < i} . (prime(n) ⇐⇒ (n - 1)! ≡ (-1) mod n)


This theorem is one of freek's list of 100 theorems



Proof




Definitions occuring in Statement :  fact: (n)!,  eqmod: a ≡ b mod m,  prime: prime(a),  less_than: a < b,  all: ∀x:A. B[x],  iff: P ⇐⇒ Q,  set: {x:A| B[x]} ,  subtract: n - m,  minus: -n,  natural_number: $n,  int: ℤ
Definitions unfolded in proof :  all: ∀x:A. B[x],  iff: P ⇐⇒ Q,  and: P ∧ Q,  implies: P ⇒ Q,  member: t ∈ T,  uall: ∀[x:A]. B[x],  prop: ℙ,  rev_implies: P ⇐ Q,  nat: ℕ,  decidable: Dec(P),  or: P ∨ Q,  uimplies: b supposing a,  not: ¬A,  satisfiable_int_formula: satisfiable_int_formula(fmla),  exists: ∃x:A. B[x],  false: False,  top: Top,  subtype_rel: A ⊆r B,  nat_plus: ℕ+,  cand: A c∧ B,  squash: ↓T,  so_lambda: λ2x.t[x],  so_apply: x[s],  int_seg: {i..j-},  lelt: i ≤ j < k,  label: ...$L... t,  sq_stable: SqStable(P),  guard: {T},  true: True,  subtract: n - m,  uiff: uiff(P;Q),  le: A ≤ B,  less_than': less_than'(a;b),  inject: Inj(A;B;f),  cyclic-map: cyclic-map(T),  injection: A →⟶ B,  respects-equality: respects-equality(S;T),  compose: f o g,  rotate-by: rotate-by(n;i),  ge: i ≥ j ,  nequal: a ≠ b ∈ T ,  int_nzero: ℤ-o,  sq_type: SQType(T),  less_than: a < b,  equipollent: A ~ B,  biject: Bij(A;B;f),  surject: Surj(A;B;f),  divides: b | a,  prime: prime(a),  eqmod: a ≡ b mod m,  pm_equal: i = ± j
Lemmas referenced :  prime_wf,  eqmod_wf,  fact_wf,  subtract_wf,  decidable__le,  full-omega-unsat,  intformand_wf,  intformnot_wf,  intformle_wf,  itermConstant_wf,  itermSubtract_wf,  itermVar_wf,  intformless_wf,  istype-int,  int_formula_prop_and_lemma,  istype-void,  int_formula_prop_not_lemma,  int_formula_prop_le_lemma,  int_term_value_constant_lemma,  int_term_value_subtract_lemma,  int_term_value_var_lemma,  int_formula_prop_less_lemma,  int_formula_prop_wf,  istype-le,  istype-less_than,  equal_wf,  rotate-by-rotate-by,  subtype_rel_sets_simple,  less_than_wf,  le_wf,  int_seg_properties,  decidable__equal_int,  intformeq_wf,  int_formula_prop_eq_lemma,  sq_stable__less_than,  rotate-by_wf,  itermAdd_wf,  int_term_value_add_lemma,  decidable__lt,  iff_weakening_equal,  add-commutes,  add-swap,  add-associates,  zero-add,  rotate-by-trivial-test,  int_seg_wf,  subtract-add-cancel,  rotate-by-trivial,  eqmod-prime-order-fixedpoints,  nat_plus_subtype_nat,  cyclic-map_wf,  cyclic-map-conjugate,  count-cyclic-map,  istype-false,  not-lt-2,  less-iff-le,  add_functionality_wrt_le,  le-add-cancel,  equipollent_wf,  inject_wf,  fun_exp_wf,  compose_wf,  respects-equality-set,  injection_wf,  all_wf,  exists_wf,  nat_wf,  istype-nat,  respects-equality-set-trivial,  set_subtype_base,  lelt_wf,  int_subtype_base,  squash_wf,  true_wf,  istype-universe,  subtype_rel_self,  nat_properties,  ge_wf,  add-comm,  rem_bounds_1,  rem_eq_args_z,  nequal_wf,  absval_wf,  add_functionality_wrt_eq,  subtract-1-ge-0,  subtype_base_sq,  rem_base_case,  less_than_transitivity2,  itermMinus_wf,  int_term_value_minus_lemma,  minus-add,  minus-minus,  minus-one-mul,  rem_addition,  le_weakening2,  rem_rec_case,  add-mul-special,  one-mul,  zero-mul,  iterate-rotate-by,  mul-commutes,  rem-zero,  subtract_nat_wf,  false_wf,  int_seg_subtype_nat,  subtract-is-int-iff,  rotate-by-cyclic-map,  gcd-prime,  add-member-int_seg2,  equal-wf-base-T,  compose-rotate-by,  biject_wf,  iterated-conjugate,  mul_bounds_1a,  itermMultiply_wf,  int_term_value_mul_lemma,  divides_reflexivity,  rotate-by-is-id,  eqmod-zero,  eqmod_functionality_wrt_eqmod,  eqmod_weakening,  subtract_functionality_wrt_eqmod,  primality-test,  divides_wf,  assoced_nelim,  mul_preserves_le,  mul_preserves_lt,  multiply-is-int-iff,  divides_add,  divides-fact,  divides_product,  only_pm_one_divs_one
Rules used in proof :  sqequalSubstitution,  sqequalTransitivity,  computationStep,  sqequalReflexivity,  lambdaFormation_alt,  independent_pairFormation,  universeIsType,  cut,  introduction,  extract_by_obid,  sqequalHypSubstitution,  isectElimination,  thin,  setElimination,  rename,  hypothesisEquality,  hypothesis,  because_Cache,  dependent_set_memberEquality_alt,  natural_numberEquality,  dependent_functionElimination,  unionElimination,  independent_isectElimination,  approximateComputation,  independent_functionElimination,  dependent_pairFormation_alt,  lambdaEquality_alt,  int_eqEquality,  isect_memberEquality_alt,  voidElimination,  sqequalRule,  applyEquality,  inhabitedIsType,  equalityTransitivity,  equalitySymmetry,  minusEquality,  setIsType,  imageElimination,  intEquality,  productElimination,  imageMemberEquality,  baseClosed,  addEquality,  productIsType,  applyLambdaEquality,  setEquality,  functionIsType,  equalityIstype,  functionEquality,  sqequalBase,  functionExtensionality_alt,  instantiate,  universeEquality,  intWeakElimination,  axiomEquality,  functionIsTypeImplies,  remainderEquality,  closedConclusion,  cumulativity,  multiplyEquality,  hyp_replacement,  functionExtensionality,  pointwiseFunctionality,  promote_hyp,  baseApply,  inlFormation_alt

Latex:
\mforall{}n:\{i:\mBbbZ{}|  1  <  i\}  .  (prime(n)  \mLeftarrow{}{}\mRightarrow{}  (n  -  1)!  \mequiv{}  (-1)  mod  n)



Date html generated: 2019_10_15-AM-11_23_06
Last ObjectModification: 2018_12_08-AM-11_51_50

Theory : general


Home Index