Theorem zeqmeqm | index | src |

theorem zeqmeqm (a b n: nat): $ modZ(n): b0 a = b0 b <-> mod(n): a = b $;
StepHypRefExpression
1 bitr4
(modZ(n): b0 a = b0 b <-> b0 n |Z a -ZN b) -> (mod(n): a = b <-> b0 n |Z a -ZN b) -> (modZ(n): b0 a = b0 b <-> mod(n): a = b)
2 zdvdeq2
b0 a -Z b0 b = a -ZN b -> (b0 n |Z b0 a -Z b0 b <-> b0 n |Z a -ZN b)
3 2 conv zeqm
b0 a -Z b0 b = a -ZN b -> (modZ(n): b0 a = b0 b <-> b0 n |Z a -ZN b)
4 zsubb0
b0 a -Z b0 b = a -ZN b
5 3, 4 ax_mp
modZ(n): b0 a = b0 b <-> b0 n |Z a -ZN b
6 1, 5 ax_mp
(mod(n): a = b <-> b0 n |Z a -ZN b) -> (modZ(n): b0 a = b0 b <-> mod(n): a = b)
7 bitr
(mod(n): a = b <-> mod(n): b = a) -> (mod(n): b = a <-> b0 n |Z a -ZN b) -> (mod(n): a = b <-> b0 n |Z a -ZN b)
8 eqmcomb
mod(n): a = b <-> mod(n): b = a
9 7, 8 ax_mp
(mod(n): b = a <-> b0 n |Z a -ZN b) -> (mod(n): a = b <-> b0 n |Z a -ZN b)
10 eqmzdvdsub
mod(n): b = a <-> b0 n |Z a -ZN b
11 9, 10 ax_mp
mod(n): a = b <-> b0 n |Z a -ZN b
12 6, 11 ax_mp
modZ(n): b0 a = b0 b <-> mod(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)