Theorem bgcdeqd | index | src |

theorem bgcdeqd (_G: wff) (_a1 _a2 _b1 _b2: nat):
  $ _G -> _a1 = _a2 $ >
  $ _G -> _b1 = _b2 $ >
  $ _G -> bgcd _a1 _b1 = bgcd _a2 _b2 $;
StepHypRefExpression
1 biidd
_G -> (0 < d <-> 0 < d)
2 eqidd
_G -> x = x
3 hyp _ah
_G -> _a1 = _a2
4 2, 3 muleqd
_G -> x * _a1 = x * _a2
5 eqidd
_G -> y = y
6 hyp _bh
_G -> _b1 = _b2
7 5, 6 muleqd
_G -> y * _b1 = y * _b2
8 eqidd
_G -> d = d
9 7, 8 addeqd
_G -> y * _b1 + d = y * _b2 + d
10 4, 9 eqeqd
_G -> (x * _a1 = y * _b1 + d <-> x * _a2 = y * _b2 + d)
11 10 exeqd
_G -> (E. y x * _a1 = y * _b1 + d <-> E. y x * _a2 = y * _b2 + d)
12 11 exeqd
_G -> (E. x E. y x * _a1 = y * _b1 + d <-> E. x E. y x * _a2 = y * _b2 + d)
13 1, 12 aneqd
_G -> (0 < d /\ E. x E. y x * _a1 = y * _b1 + d <-> 0 < d /\ E. x E. y x * _a2 = y * _b2 + d)
14 13 abeqd
_G -> {d | 0 < d /\ E. x E. y x * _a1 = y * _b1 + d} == {d | 0 < d /\ E. x E. y x * _a2 = y * _b2 + d}
15 14 leasteqd
_G -> least {d | 0 < d /\ E. x E. y x * _a1 = y * _b1 + d} = least {d | 0 < d /\ E. x E. y x * _a2 = y * _b2 + d}
16 15 conv bgcd
_G -> bgcd _a1 _b1 = bgcd _a2 _b2

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