Theorem zmodeqmod | index | src |

theorem zmodeqmod (a b n: nat):
  $ n != 0 -> (a %Z n = b %Z n <-> modZ(n): a = b) $;
StepHypRefExpression
1
b0 (a %Z n) = b0 (b %Z n) -> modZ(n): b0 (a %Z n) = b0 (b %Z n)
2
a %Z n = b %Z n -> b0 (a %Z n) = b0 (b %Z n)
3
1, 2
a %Z n = b %Z n -> modZ(n): b0 (a %Z n) = b0 (b %Z n)
4
a %Z n % n = a %Z n
5
b %Z n % n = b %Z n
6
modZ(n): b0 (a %Z n) = b0 (b %Z n) <-> mod(n): a %Z n = b %Z n
7
conv eqm
modZ(n): b0 (a %Z n) = b0 (b %Z n) <-> a %Z n % n = b %Z n % n
8
modZ(n): b0 (a %Z n) = b0 (b %Z n) -> a %Z n % n = b %Z n % n
9
4, 5, 8
modZ(n): b0 (a %Z n) = b0 (b %Z n) -> a %Z n = b %Z n
10
3, 9
a %Z n = b %Z n <-> modZ(n): b0 (a %Z n) = b0 (b %Z n)
11
n != 0 -> modZ(n): b0 (a %Z n) = a
12
n != 0 -> modZ(n): b0 (b %Z n) = b
13
n != 0 -> (modZ(n): b0 (a %Z n) = b0 (b %Z n) <-> modZ(n): a = b)
14
n != 0 -> (a %Z n = b %Z n <-> modZ(n): a = b)

Axiom use

axs_prop_calc (ax_1, ax_2, ax_3, ax_mp, itru), axs_pred_calc (ax_gen, ax_4, ax_5, ax_6, ax_7, ax_10, ax_11, ax_12), axs_set (elab, ax_8), axs_the (theid, the0), axs_peano (peano1, peano2, peano5, addeq, muleq, add0, addS, mul0, mulS)