Metamath Proof Explorer


Theorem ex-ind-dvds

Description: Example of a proof by induction (divisibility result). (Contributed by Stanislas Polu, 9-Mar-2020) (Revised by BJ, 24-Mar-2020)

Ref Expression
Assertion ex-ind-dvds ( 𝑁 ∈ ℕ0 → 3 ∥ ( ( 4 ↑ 𝑁 ) + 2 ) )

Proof

Step Hyp Ref Expression
1 oveq2 ( 𝑘 = 0 → ( 4 ↑ 𝑘 ) = ( 4 ↑ 0 ) )
2 1 oveq1d ( 𝑘 = 0 → ( ( 4 ↑ 𝑘 ) + 2 ) = ( ( 4 ↑ 0 ) + 2 ) )
3 2 breq2d ( 𝑘 = 0 → ( 3 ∥ ( ( 4 ↑ 𝑘 ) + 2 ) ↔ 3 ∥ ( ( 4 ↑ 0 ) + 2 ) ) )
4 oveq2 ( 𝑘 = 𝑛 → ( 4 ↑ 𝑘 ) = ( 4 ↑ 𝑛 ) )
5 4 oveq1d ( 𝑘 = 𝑛 → ( ( 4 ↑ 𝑘 ) + 2 ) = ( ( 4 ↑ 𝑛 ) + 2 ) )
6 5 breq2d ( 𝑘 = 𝑛 → ( 3 ∥ ( ( 4 ↑ 𝑘 ) + 2 ) ↔ 3 ∥ ( ( 4 ↑ 𝑛 ) + 2 ) ) )
7 oveq2 ( 𝑘 = ( 𝑛 + 1 ) → ( 4 ↑ 𝑘 ) = ( 4 ↑ ( 𝑛 + 1 ) ) )
8 7 oveq1d ( 𝑘 = ( 𝑛 + 1 ) → ( ( 4 ↑ 𝑘 ) + 2 ) = ( ( 4 ↑ ( 𝑛 + 1 ) ) + 2 ) )
9 8 breq2d ( 𝑘 = ( 𝑛 + 1 ) → ( 3 ∥ ( ( 4 ↑ 𝑘 ) + 2 ) ↔ 3 ∥ ( ( 4 ↑ ( 𝑛 + 1 ) ) + 2 ) ) )
10 oveq2 ( 𝑘 = 𝑁 → ( 4 ↑ 𝑘 ) = ( 4 ↑ 𝑁 ) )
11 10 oveq1d ( 𝑘 = 𝑁 → ( ( 4 ↑ 𝑘 ) + 2 ) = ( ( 4 ↑ 𝑁 ) + 2 ) )
12 11 breq2d ( 𝑘 = 𝑁 → ( 3 ∥ ( ( 4 ↑ 𝑘 ) + 2 ) ↔ 3 ∥ ( ( 4 ↑ 𝑁 ) + 2 ) ) )
13 3z 3 ∈ ℤ
14 iddvds ( 3 ∈ ℤ → 3 ∥ 3 )
15 13 14 ax-mp 3 ∥ 3
16 4nn0 4 ∈ ℕ0
17 16 numexp0 ( 4 ↑ 0 ) = 1
18 17 oveq1i ( ( 4 ↑ 0 ) + 2 ) = ( 1 + 2 )
19 1p2e3 ( 1 + 2 ) = 3
20 18 19 eqtri ( ( 4 ↑ 0 ) + 2 ) = 3
21 15 20 breqtrri 3 ∥ ( ( 4 ↑ 0 ) + 2 )
22 13 a1i ( ( 𝑛 ∈ ℕ0 ∧ 3 ∥ ( ( 4 ↑ 𝑛 ) + 2 ) ) → 3 ∈ ℤ )
23 16 a1i ( ( 𝑛 ∈ ℕ0 ∧ 3 ∥ ( ( 4 ↑ 𝑛 ) + 2 ) ) → 4 ∈ ℕ0 )
24 simpl ( ( 𝑛 ∈ ℕ0 ∧ 3 ∥ ( ( 4 ↑ 𝑛 ) + 2 ) ) → 𝑛 ∈ ℕ0 )
25 23 24 nn0expcld ( ( 𝑛 ∈ ℕ0 ∧ 3 ∥ ( ( 4 ↑ 𝑛 ) + 2 ) ) → ( 4 ↑ 𝑛 ) ∈ ℕ0 )
26 25 nn0zd ( ( 𝑛 ∈ ℕ0 ∧ 3 ∥ ( ( 4 ↑ 𝑛 ) + 2 ) ) → ( 4 ↑ 𝑛 ) ∈ ℤ )
27 2z 2 ∈ ℤ
28 27 a1i ( ( 𝑛 ∈ ℕ0 ∧ 3 ∥ ( ( 4 ↑ 𝑛 ) + 2 ) ) → 2 ∈ ℤ )
29 26 28 zaddcld ( ( 𝑛 ∈ ℕ0 ∧ 3 ∥ ( ( 4 ↑ 𝑛 ) + 2 ) ) → ( ( 4 ↑ 𝑛 ) + 2 ) ∈ ℤ )
30 4z 4 ∈ ℤ
31 30 a1i ( ( 𝑛 ∈ ℕ0 ∧ 3 ∥ ( ( 4 ↑ 𝑛 ) + 2 ) ) → 4 ∈ ℤ )
32 29 31 zmulcld ( ( 𝑛 ∈ ℕ0 ∧ 3 ∥ ( ( 4 ↑ 𝑛 ) + 2 ) ) → ( ( ( 4 ↑ 𝑛 ) + 2 ) · 4 ) ∈ ℤ )
33 22 28 zmulcld ( ( 𝑛 ∈ ℕ0 ∧ 3 ∥ ( ( 4 ↑ 𝑛 ) + 2 ) ) → ( 3 · 2 ) ∈ ℤ )
34 16 a1i ( 𝑛 ∈ ℕ0 → 4 ∈ ℕ0 )
35 id ( 𝑛 ∈ ℕ0𝑛 ∈ ℕ0 )
36 34 35 nn0expcld ( 𝑛 ∈ ℕ0 → ( 4 ↑ 𝑛 ) ∈ ℕ0 )
37 36 nn0zd ( 𝑛 ∈ ℕ0 → ( 4 ↑ 𝑛 ) ∈ ℤ )
38 37 adantr ( ( 𝑛 ∈ ℕ0 ∧ 3 ∥ ( ( 4 ↑ 𝑛 ) + 2 ) ) → ( 4 ↑ 𝑛 ) ∈ ℤ )
39 38 28 zaddcld ( ( 𝑛 ∈ ℕ0 ∧ 3 ∥ ( ( 4 ↑ 𝑛 ) + 2 ) ) → ( ( 4 ↑ 𝑛 ) + 2 ) ∈ ℤ )
40 simpr ( ( 𝑛 ∈ ℕ0 ∧ 3 ∥ ( ( 4 ↑ 𝑛 ) + 2 ) ) → 3 ∥ ( ( 4 ↑ 𝑛 ) + 2 ) )
41 22 39 31 40 dvdsmultr1d ( ( 𝑛 ∈ ℕ0 ∧ 3 ∥ ( ( 4 ↑ 𝑛 ) + 2 ) ) → 3 ∥ ( ( ( 4 ↑ 𝑛 ) + 2 ) · 4 ) )
42 dvdsmul1 ( ( 3 ∈ ℤ ∧ 2 ∈ ℤ ) → 3 ∥ ( 3 · 2 ) )
43 13 27 42 mp2an 3 ∥ ( 3 · 2 )
44 43 a1i ( ( 𝑛 ∈ ℕ0 ∧ 3 ∥ ( ( 4 ↑ 𝑛 ) + 2 ) ) → 3 ∥ ( 3 · 2 ) )
45 22 32 33 41 44 dvds2subd ( ( 𝑛 ∈ ℕ0 ∧ 3 ∥ ( ( 4 ↑ 𝑛 ) + 2 ) ) → 3 ∥ ( ( ( ( 4 ↑ 𝑛 ) + 2 ) · 4 ) − ( 3 · 2 ) ) )
46 36 nn0cnd ( 𝑛 ∈ ℕ0 → ( 4 ↑ 𝑛 ) ∈ ℂ )
47 2cnd ( 𝑛 ∈ ℕ0 → 2 ∈ ℂ )
48 4cn 4 ∈ ℂ
49 48 a1i ( 𝑛 ∈ ℕ0 → 4 ∈ ℂ )
50 46 47 49 adddird ( 𝑛 ∈ ℕ0 → ( ( ( 4 ↑ 𝑛 ) + 2 ) · 4 ) = ( ( ( 4 ↑ 𝑛 ) · 4 ) + ( 2 · 4 ) ) )
51 50 oveq1d ( 𝑛 ∈ ℕ0 → ( ( ( ( 4 ↑ 𝑛 ) + 2 ) · 4 ) − ( 2 · 3 ) ) = ( ( ( ( 4 ↑ 𝑛 ) · 4 ) + ( 2 · 4 ) ) − ( 2 · 3 ) ) )
52 3cn 3 ∈ ℂ
53 2cn 2 ∈ ℂ
54 52 53 mulcomi ( 3 · 2 ) = ( 2 · 3 )
55 54 a1i ( 𝑛 ∈ ℕ0 → ( 3 · 2 ) = ( 2 · 3 ) )
56 55 oveq2d ( 𝑛 ∈ ℕ0 → ( ( ( ( 4 ↑ 𝑛 ) + 2 ) · 4 ) − ( 3 · 2 ) ) = ( ( ( ( 4 ↑ 𝑛 ) + 2 ) · 4 ) − ( 2 · 3 ) ) )
57 49 35 expp1d ( 𝑛 ∈ ℕ0 → ( 4 ↑ ( 𝑛 + 1 ) ) = ( ( 4 ↑ 𝑛 ) · 4 ) )
58 ax-1cn 1 ∈ ℂ
59 3p1e4 ( 3 + 1 ) = 4
60 52 58 59 addcomli ( 1 + 3 ) = 4
61 60 eqcomi 4 = ( 1 + 3 )
62 58 52 61 mvrraddi ( 4 − 3 ) = 1
63 62 oveq2i ( 2 · ( 4 − 3 ) ) = ( 2 · 1 )
64 53 48 52 subdii ( 2 · ( 4 − 3 ) ) = ( ( 2 · 4 ) − ( 2 · 3 ) )
65 2t1e2 ( 2 · 1 ) = 2
66 63 64 65 3eqtr3ri 2 = ( ( 2 · 4 ) − ( 2 · 3 ) )
67 66 a1i ( 𝑛 ∈ ℕ0 → 2 = ( ( 2 · 4 ) − ( 2 · 3 ) ) )
68 57 67 oveq12d ( 𝑛 ∈ ℕ0 → ( ( 4 ↑ ( 𝑛 + 1 ) ) + 2 ) = ( ( ( 4 ↑ 𝑛 ) · 4 ) + ( ( 2 · 4 ) − ( 2 · 3 ) ) ) )
69 46 49 mulcld ( 𝑛 ∈ ℕ0 → ( ( 4 ↑ 𝑛 ) · 4 ) ∈ ℂ )
70 47 49 mulcld ( 𝑛 ∈ ℕ0 → ( 2 · 4 ) ∈ ℂ )
71 52 a1i ( 𝑛 ∈ ℕ0 → 3 ∈ ℂ )
72 47 71 mulcld ( 𝑛 ∈ ℕ0 → ( 2 · 3 ) ∈ ℂ )
73 69 70 72 addsubassd ( 𝑛 ∈ ℕ0 → ( ( ( ( 4 ↑ 𝑛 ) · 4 ) + ( 2 · 4 ) ) − ( 2 · 3 ) ) = ( ( ( 4 ↑ 𝑛 ) · 4 ) + ( ( 2 · 4 ) − ( 2 · 3 ) ) ) )
74 68 73 eqtr4d ( 𝑛 ∈ ℕ0 → ( ( 4 ↑ ( 𝑛 + 1 ) ) + 2 ) = ( ( ( ( 4 ↑ 𝑛 ) · 4 ) + ( 2 · 4 ) ) − ( 2 · 3 ) ) )
75 51 56 74 3eqtr4rd ( 𝑛 ∈ ℕ0 → ( ( 4 ↑ ( 𝑛 + 1 ) ) + 2 ) = ( ( ( ( 4 ↑ 𝑛 ) + 2 ) · 4 ) − ( 3 · 2 ) ) )
76 75 adantr ( ( 𝑛 ∈ ℕ0 ∧ 3 ∥ ( ( 4 ↑ 𝑛 ) + 2 ) ) → ( ( 4 ↑ ( 𝑛 + 1 ) ) + 2 ) = ( ( ( ( 4 ↑ 𝑛 ) + 2 ) · 4 ) − ( 3 · 2 ) ) )
77 45 76 breqtrrd ( ( 𝑛 ∈ ℕ0 ∧ 3 ∥ ( ( 4 ↑ 𝑛 ) + 2 ) ) → 3 ∥ ( ( 4 ↑ ( 𝑛 + 1 ) ) + 2 ) )
78 77 ex ( 𝑛 ∈ ℕ0 → ( 3 ∥ ( ( 4 ↑ 𝑛 ) + 2 ) → 3 ∥ ( ( 4 ↑ ( 𝑛 + 1 ) ) + 2 ) ) )
79 3 6 9 12 21 78 nn0ind ( 𝑁 ∈ ℕ0 → 3 ∥ ( ( 4 ↑ 𝑁 ) + 2 ) )