Theorem zmuleqd | index | src |

theorem zmuleqd (_G: wff) (_m1 _m2 _n1 _n2: nat):
  $ _G -> _m1 = _m2 $ >
  $ _G -> _n1 = _n2 $ >
  $ _G -> _m1 *Z _n1 = _m2 *Z _n2 $;
StepHypRefExpression
1 hyp _mh
_G -> _m1 = _m2
2 1 zfsteqd
_G -> zfst _m1 = zfst _m2
3 hyp _nh
_G -> _n1 = _n2
4 3 zfsteqd
_G -> zfst _n1 = zfst _n2
5 2, 4 muleqd
_G -> zfst _m1 * zfst _n1 = zfst _m2 * zfst _n2
6 1 zsndeqd
_G -> zsnd _m1 = zsnd _m2
7 3 zsndeqd
_G -> zsnd _n1 = zsnd _n2
8 6, 7 muleqd
_G -> zsnd _m1 * zsnd _n1 = zsnd _m2 * zsnd _n2
9 5, 8 addeqd
_G -> zfst _m1 * zfst _n1 + zsnd _m1 * zsnd _n1 = zfst _m2 * zfst _n2 + zsnd _m2 * zsnd _n2
10 2, 7 muleqd
_G -> zfst _m1 * zsnd _n1 = zfst _m2 * zsnd _n2
11 6, 4 muleqd
_G -> zsnd _m1 * zfst _n1 = zsnd _m2 * zfst _n2
12 10, 11 addeqd
_G -> zfst _m1 * zsnd _n1 + zsnd _m1 * zfst _n1 = zfst _m2 * zsnd _n2 + zsnd _m2 * zfst _n2
13 9, 12 znsubeqd
_G ->
  zfst _m1 * zfst _n1 + zsnd _m1 * zsnd _n1 -ZN (zfst _m1 * zsnd _n1 + zsnd _m1 * zfst _n1) =
    zfst _m2 * zfst _n2 + zsnd _m2 * zsnd _n2 -ZN (zfst _m2 * zsnd _n2 + zsnd _m2 * zfst _n2)
14 13 conv zmul
_G -> _m1 *Z _n1 = _m2 *Z _n2

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 (peano2, addeq, muleq)