theorem rlreceqd (_G: wff) (_z1 _z2: nat) (_S1 _S2: set) (_n1 _n2: nat):
$ _G -> _z1 = _z2 $ >
$ _G -> _S1 == _S2 $ >
$ _G -> _n1 = _n2 $ >
$ _G -> rlrec _z1 _S1 _n1 = rlrec _z2 _S2 _n2 $;
Step | Hyp | Ref | Expression |
1 |
|
hyp _zh |
_G -> _z1 = _z2 |
2 |
|
hyp _Sh |
_G -> _S1 == _S2 |
3 |
|
eqidd |
_G -> rev l, a, ih = rev l, a, ih |
4 |
2, 3 |
appeqd |
_G -> _S1 @ (rev l, a, ih) = _S2 @ (rev l, a, ih) |
5 |
4 |
lameqd |
_G -> \ ih, _S1 @ (rev l, a, ih) == \ ih, _S2 @ (rev l, a, ih) |
6 |
5 |
slameqd |
_G -> (\\ l, \ ih, _S1 @ (rev l, a, ih)) == (\\ l, \ ih, _S2 @ (rev l, a, ih)) |
7 |
6 |
slameqd |
_G -> (\\ a, \\ l, \ ih, _S1 @ (rev l, a, ih)) == (\\ a, \\ l, \ ih, _S2 @ (rev l, a, ih)) |
8 |
|
hyp _nh |
_G -> _n1 = _n2 |
9 |
8 |
reveqd |
_G -> rev _n1 = rev _n2 |
10 |
1, 7, 9 |
lreceqd |
_G -> lrec _z1 (\\ a, \\ l, \ ih, _S1 @ (rev l, a, ih)) (rev _n1) = lrec _z2 (\\ a, \\ l, \ ih, _S2 @ (rev l, a, ih)) (rev _n2) |
11 |
10 |
conv rlrec |
_G -> rlrec _z1 _S1 _n1 = rlrec _z2 _S2 _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)