This is an inofficial mirror of http://metamath.tirix.org for personal testing of a visualizer extension only.
Description: dvdsexpnn generalized to include zero bases. (Contributed by SN, 15-Sep-2024)
| Ref | Expression | ||
|---|---|---|---|
| Assertion | dvdsexpnn0 | ⊢ ( ( 𝐴 ∈ ℕ0 ∧ 𝐵 ∈ ℕ0 ∧ 𝑁 ∈ ℕ ) → ( 𝐴 ∥ 𝐵 ↔ ( 𝐴 ↑ 𝑁 ) ∥ ( 𝐵 ↑ 𝑁 ) ) ) |
| Step | Hyp | Ref | Expression |
|---|---|---|---|
| 1 | elnn0 | ⊢ ( 𝐴 ∈ ℕ0 ↔ ( 𝐴 ∈ ℕ ∨ 𝐴 = 0 ) ) | |
| 2 | elnn0 | ⊢ ( 𝐵 ∈ ℕ0 ↔ ( 𝐵 ∈ ℕ ∨ 𝐵 = 0 ) ) | |
| 3 | dvdsexpnn | ⊢ ( ( 𝐴 ∈ ℕ ∧ 𝐵 ∈ ℕ ∧ 𝑁 ∈ ℕ ) → ( 𝐴 ∥ 𝐵 ↔ ( 𝐴 ↑ 𝑁 ) ∥ ( 𝐵 ↑ 𝑁 ) ) ) | |
| 4 | 3 | 3expia | ⊢ ( ( 𝐴 ∈ ℕ ∧ 𝐵 ∈ ℕ ) → ( 𝑁 ∈ ℕ → ( 𝐴 ∥ 𝐵 ↔ ( 𝐴 ↑ 𝑁 ) ∥ ( 𝐵 ↑ 𝑁 ) ) ) ) |
| 5 | nncn | ⊢ ( 𝐵 ∈ ℕ → 𝐵 ∈ ℂ ) | |
| 6 | expeq0 | ⊢ ( ( 𝐵 ∈ ℂ ∧ 𝑁 ∈ ℕ ) → ( ( 𝐵 ↑ 𝑁 ) = 0 ↔ 𝐵 = 0 ) ) | |
| 7 | 5 6 | sylan | ⊢ ( ( 𝐵 ∈ ℕ ∧ 𝑁 ∈ ℕ ) → ( ( 𝐵 ↑ 𝑁 ) = 0 ↔ 𝐵 = 0 ) ) |
| 8 | 0exp | ⊢ ( 𝑁 ∈ ℕ → ( 0 ↑ 𝑁 ) = 0 ) | |
| 9 | 8 | adantl | ⊢ ( ( 𝐵 ∈ ℕ ∧ 𝑁 ∈ ℕ ) → ( 0 ↑ 𝑁 ) = 0 ) |
| 10 | 9 | breq1d | ⊢ ( ( 𝐵 ∈ ℕ ∧ 𝑁 ∈ ℕ ) → ( ( 0 ↑ 𝑁 ) ∥ ( 𝐵 ↑ 𝑁 ) ↔ 0 ∥ ( 𝐵 ↑ 𝑁 ) ) ) |
| 11 | nnnn0 | ⊢ ( 𝑁 ∈ ℕ → 𝑁 ∈ ℕ0 ) | |
| 12 | nnexpcl | ⊢ ( ( 𝐵 ∈ ℕ ∧ 𝑁 ∈ ℕ0 ) → ( 𝐵 ↑ 𝑁 ) ∈ ℕ ) | |
| 13 | 11 12 | sylan2 | ⊢ ( ( 𝐵 ∈ ℕ ∧ 𝑁 ∈ ℕ ) → ( 𝐵 ↑ 𝑁 ) ∈ ℕ ) |
| 14 | 13 | nnzd | ⊢ ( ( 𝐵 ∈ ℕ ∧ 𝑁 ∈ ℕ ) → ( 𝐵 ↑ 𝑁 ) ∈ ℤ ) |
| 15 | 0dvds | ⊢ ( ( 𝐵 ↑ 𝑁 ) ∈ ℤ → ( 0 ∥ ( 𝐵 ↑ 𝑁 ) ↔ ( 𝐵 ↑ 𝑁 ) = 0 ) ) | |
| 16 | 14 15 | syl | ⊢ ( ( 𝐵 ∈ ℕ ∧ 𝑁 ∈ ℕ ) → ( 0 ∥ ( 𝐵 ↑ 𝑁 ) ↔ ( 𝐵 ↑ 𝑁 ) = 0 ) ) |
| 17 | 10 16 | bitrd | ⊢ ( ( 𝐵 ∈ ℕ ∧ 𝑁 ∈ ℕ ) → ( ( 0 ↑ 𝑁 ) ∥ ( 𝐵 ↑ 𝑁 ) ↔ ( 𝐵 ↑ 𝑁 ) = 0 ) ) |
| 18 | nnz | ⊢ ( 𝐵 ∈ ℕ → 𝐵 ∈ ℤ ) | |
| 19 | 0dvds | ⊢ ( 𝐵 ∈ ℤ → ( 0 ∥ 𝐵 ↔ 𝐵 = 0 ) ) | |
| 20 | 18 19 | syl | ⊢ ( 𝐵 ∈ ℕ → ( 0 ∥ 𝐵 ↔ 𝐵 = 0 ) ) |
| 21 | 20 | adantr | ⊢ ( ( 𝐵 ∈ ℕ ∧ 𝑁 ∈ ℕ ) → ( 0 ∥ 𝐵 ↔ 𝐵 = 0 ) ) |
| 22 | 7 17 21 | 3bitr4rd | ⊢ ( ( 𝐵 ∈ ℕ ∧ 𝑁 ∈ ℕ ) → ( 0 ∥ 𝐵 ↔ ( 0 ↑ 𝑁 ) ∥ ( 𝐵 ↑ 𝑁 ) ) ) |
| 23 | breq1 | ⊢ ( 𝐴 = 0 → ( 𝐴 ∥ 𝐵 ↔ 0 ∥ 𝐵 ) ) | |
| 24 | oveq1 | ⊢ ( 𝐴 = 0 → ( 𝐴 ↑ 𝑁 ) = ( 0 ↑ 𝑁 ) ) | |
| 25 | 24 | breq1d | ⊢ ( 𝐴 = 0 → ( ( 𝐴 ↑ 𝑁 ) ∥ ( 𝐵 ↑ 𝑁 ) ↔ ( 0 ↑ 𝑁 ) ∥ ( 𝐵 ↑ 𝑁 ) ) ) |
| 26 | 23 25 | bibi12d | ⊢ ( 𝐴 = 0 → ( ( 𝐴 ∥ 𝐵 ↔ ( 𝐴 ↑ 𝑁 ) ∥ ( 𝐵 ↑ 𝑁 ) ) ↔ ( 0 ∥ 𝐵 ↔ ( 0 ↑ 𝑁 ) ∥ ( 𝐵 ↑ 𝑁 ) ) ) ) |
| 27 | 22 26 | imbitrrid | ⊢ ( 𝐴 = 0 → ( ( 𝐵 ∈ ℕ ∧ 𝑁 ∈ ℕ ) → ( 𝐴 ∥ 𝐵 ↔ ( 𝐴 ↑ 𝑁 ) ∥ ( 𝐵 ↑ 𝑁 ) ) ) ) |
| 28 | 27 | expdimp | ⊢ ( ( 𝐴 = 0 ∧ 𝐵 ∈ ℕ ) → ( 𝑁 ∈ ℕ → ( 𝐴 ∥ 𝐵 ↔ ( 𝐴 ↑ 𝑁 ) ∥ ( 𝐵 ↑ 𝑁 ) ) ) ) |
| 29 | nnz | ⊢ ( 𝐴 ∈ ℕ → 𝐴 ∈ ℤ ) | |
| 30 | dvds0 | ⊢ ( 𝐴 ∈ ℤ → 𝐴 ∥ 0 ) | |
| 31 | 29 30 | syl | ⊢ ( 𝐴 ∈ ℕ → 𝐴 ∥ 0 ) |
| 32 | 31 | adantr | ⊢ ( ( 𝐴 ∈ ℕ ∧ 𝑁 ∈ ℕ ) → 𝐴 ∥ 0 ) |
| 33 | nnexpcl | ⊢ ( ( 𝐴 ∈ ℕ ∧ 𝑁 ∈ ℕ0 ) → ( 𝐴 ↑ 𝑁 ) ∈ ℕ ) | |
| 34 | 11 33 | sylan2 | ⊢ ( ( 𝐴 ∈ ℕ ∧ 𝑁 ∈ ℕ ) → ( 𝐴 ↑ 𝑁 ) ∈ ℕ ) |
| 35 | 34 | nnzd | ⊢ ( ( 𝐴 ∈ ℕ ∧ 𝑁 ∈ ℕ ) → ( 𝐴 ↑ 𝑁 ) ∈ ℤ ) |
| 36 | dvds0 | ⊢ ( ( 𝐴 ↑ 𝑁 ) ∈ ℤ → ( 𝐴 ↑ 𝑁 ) ∥ 0 ) | |
| 37 | 35 36 | syl | ⊢ ( ( 𝐴 ∈ ℕ ∧ 𝑁 ∈ ℕ ) → ( 𝐴 ↑ 𝑁 ) ∥ 0 ) |
| 38 | 8 | adantl | ⊢ ( ( 𝐴 ∈ ℕ ∧ 𝑁 ∈ ℕ ) → ( 0 ↑ 𝑁 ) = 0 ) |
| 39 | 37 38 | breqtrrd | ⊢ ( ( 𝐴 ∈ ℕ ∧ 𝑁 ∈ ℕ ) → ( 𝐴 ↑ 𝑁 ) ∥ ( 0 ↑ 𝑁 ) ) |
| 40 | 32 39 | 2thd | ⊢ ( ( 𝐴 ∈ ℕ ∧ 𝑁 ∈ ℕ ) → ( 𝐴 ∥ 0 ↔ ( 𝐴 ↑ 𝑁 ) ∥ ( 0 ↑ 𝑁 ) ) ) |
| 41 | breq2 | ⊢ ( 𝐵 = 0 → ( 𝐴 ∥ 𝐵 ↔ 𝐴 ∥ 0 ) ) | |
| 42 | oveq1 | ⊢ ( 𝐵 = 0 → ( 𝐵 ↑ 𝑁 ) = ( 0 ↑ 𝑁 ) ) | |
| 43 | 42 | breq2d | ⊢ ( 𝐵 = 0 → ( ( 𝐴 ↑ 𝑁 ) ∥ ( 𝐵 ↑ 𝑁 ) ↔ ( 𝐴 ↑ 𝑁 ) ∥ ( 0 ↑ 𝑁 ) ) ) |
| 44 | 41 43 | bibi12d | ⊢ ( 𝐵 = 0 → ( ( 𝐴 ∥ 𝐵 ↔ ( 𝐴 ↑ 𝑁 ) ∥ ( 𝐵 ↑ 𝑁 ) ) ↔ ( 𝐴 ∥ 0 ↔ ( 𝐴 ↑ 𝑁 ) ∥ ( 0 ↑ 𝑁 ) ) ) ) |
| 45 | 40 44 | syl5ibrcom | ⊢ ( ( 𝐴 ∈ ℕ ∧ 𝑁 ∈ ℕ ) → ( 𝐵 = 0 → ( 𝐴 ∥ 𝐵 ↔ ( 𝐴 ↑ 𝑁 ) ∥ ( 𝐵 ↑ 𝑁 ) ) ) ) |
| 46 | 45 | impancom | ⊢ ( ( 𝐴 ∈ ℕ ∧ 𝐵 = 0 ) → ( 𝑁 ∈ ℕ → ( 𝐴 ∥ 𝐵 ↔ ( 𝐴 ↑ 𝑁 ) ∥ ( 𝐵 ↑ 𝑁 ) ) ) ) |
| 47 | 8 8 | breq12d | ⊢ ( 𝑁 ∈ ℕ → ( ( 0 ↑ 𝑁 ) ∥ ( 0 ↑ 𝑁 ) ↔ 0 ∥ 0 ) ) |
| 48 | 47 | bicomd | ⊢ ( 𝑁 ∈ ℕ → ( 0 ∥ 0 ↔ ( 0 ↑ 𝑁 ) ∥ ( 0 ↑ 𝑁 ) ) ) |
| 49 | breq12 | ⊢ ( ( 𝐴 = 0 ∧ 𝐵 = 0 ) → ( 𝐴 ∥ 𝐵 ↔ 0 ∥ 0 ) ) | |
| 50 | simpl | ⊢ ( ( 𝐴 = 0 ∧ 𝐵 = 0 ) → 𝐴 = 0 ) | |
| 51 | 50 | oveq1d | ⊢ ( ( 𝐴 = 0 ∧ 𝐵 = 0 ) → ( 𝐴 ↑ 𝑁 ) = ( 0 ↑ 𝑁 ) ) |
| 52 | simpr | ⊢ ( ( 𝐴 = 0 ∧ 𝐵 = 0 ) → 𝐵 = 0 ) | |
| 53 | 52 | oveq1d | ⊢ ( ( 𝐴 = 0 ∧ 𝐵 = 0 ) → ( 𝐵 ↑ 𝑁 ) = ( 0 ↑ 𝑁 ) ) |
| 54 | 51 53 | breq12d | ⊢ ( ( 𝐴 = 0 ∧ 𝐵 = 0 ) → ( ( 𝐴 ↑ 𝑁 ) ∥ ( 𝐵 ↑ 𝑁 ) ↔ ( 0 ↑ 𝑁 ) ∥ ( 0 ↑ 𝑁 ) ) ) |
| 55 | 49 54 | bibi12d | ⊢ ( ( 𝐴 = 0 ∧ 𝐵 = 0 ) → ( ( 𝐴 ∥ 𝐵 ↔ ( 𝐴 ↑ 𝑁 ) ∥ ( 𝐵 ↑ 𝑁 ) ) ↔ ( 0 ∥ 0 ↔ ( 0 ↑ 𝑁 ) ∥ ( 0 ↑ 𝑁 ) ) ) ) |
| 56 | 48 55 | imbitrrid | ⊢ ( ( 𝐴 = 0 ∧ 𝐵 = 0 ) → ( 𝑁 ∈ ℕ → ( 𝐴 ∥ 𝐵 ↔ ( 𝐴 ↑ 𝑁 ) ∥ ( 𝐵 ↑ 𝑁 ) ) ) ) |
| 57 | 4 28 46 56 | ccase | ⊢ ( ( ( 𝐴 ∈ ℕ ∨ 𝐴 = 0 ) ∧ ( 𝐵 ∈ ℕ ∨ 𝐵 = 0 ) ) → ( 𝑁 ∈ ℕ → ( 𝐴 ∥ 𝐵 ↔ ( 𝐴 ↑ 𝑁 ) ∥ ( 𝐵 ↑ 𝑁 ) ) ) ) |
| 58 | 1 2 57 | syl2anb | ⊢ ( ( 𝐴 ∈ ℕ0 ∧ 𝐵 ∈ ℕ0 ) → ( 𝑁 ∈ ℕ → ( 𝐴 ∥ 𝐵 ↔ ( 𝐴 ↑ 𝑁 ) ∥ ( 𝐵 ↑ 𝑁 ) ) ) ) |
| 59 | 58 | 3impia | ⊢ ( ( 𝐴 ∈ ℕ0 ∧ 𝐵 ∈ ℕ0 ∧ 𝑁 ∈ ℕ ) → ( 𝐴 ∥ 𝐵 ↔ ( 𝐴 ↑ 𝑁 ) ∥ ( 𝐵 ↑ 𝑁 ) ) ) |