Step |
Hyp |
Ref |
Expression |
1 |
|
relogbval |
⊢ ( ( 𝐵 ∈ ( ℤ≥ ‘ 2 ) ∧ 𝑋 ∈ ℝ+ ) → ( 𝐵 logb 𝑋 ) = ( ( log ‘ 𝑋 ) / ( log ‘ 𝐵 ) ) ) |
2 |
1
|
breq2d |
⊢ ( ( 𝐵 ∈ ( ℤ≥ ‘ 2 ) ∧ 𝑋 ∈ ℝ+ ) → ( 0 ≤ ( 𝐵 logb 𝑋 ) ↔ 0 ≤ ( ( log ‘ 𝑋 ) / ( log ‘ 𝐵 ) ) ) ) |
3 |
|
relogcl |
⊢ ( 𝑋 ∈ ℝ+ → ( log ‘ 𝑋 ) ∈ ℝ ) |
4 |
3
|
adantl |
⊢ ( ( 𝐵 ∈ ( ℤ≥ ‘ 2 ) ∧ 𝑋 ∈ ℝ+ ) → ( log ‘ 𝑋 ) ∈ ℝ ) |
5 |
|
eluz2nn |
⊢ ( 𝐵 ∈ ( ℤ≥ ‘ 2 ) → 𝐵 ∈ ℕ ) |
6 |
5
|
nnrpd |
⊢ ( 𝐵 ∈ ( ℤ≥ ‘ 2 ) → 𝐵 ∈ ℝ+ ) |
7 |
|
relogcl |
⊢ ( 𝐵 ∈ ℝ+ → ( log ‘ 𝐵 ) ∈ ℝ ) |
8 |
6 7
|
syl |
⊢ ( 𝐵 ∈ ( ℤ≥ ‘ 2 ) → ( log ‘ 𝐵 ) ∈ ℝ ) |
9 |
8
|
adantr |
⊢ ( ( 𝐵 ∈ ( ℤ≥ ‘ 2 ) ∧ 𝑋 ∈ ℝ+ ) → ( log ‘ 𝐵 ) ∈ ℝ ) |
10 |
|
eluz2gt1 |
⊢ ( 𝐵 ∈ ( ℤ≥ ‘ 2 ) → 1 < 𝐵 ) |
11 |
|
loggt0b |
⊢ ( 𝐵 ∈ ℝ+ → ( 0 < ( log ‘ 𝐵 ) ↔ 1 < 𝐵 ) ) |
12 |
6 11
|
syl |
⊢ ( 𝐵 ∈ ( ℤ≥ ‘ 2 ) → ( 0 < ( log ‘ 𝐵 ) ↔ 1 < 𝐵 ) ) |
13 |
10 12
|
mpbird |
⊢ ( 𝐵 ∈ ( ℤ≥ ‘ 2 ) → 0 < ( log ‘ 𝐵 ) ) |
14 |
13
|
adantr |
⊢ ( ( 𝐵 ∈ ( ℤ≥ ‘ 2 ) ∧ 𝑋 ∈ ℝ+ ) → 0 < ( log ‘ 𝐵 ) ) |
15 |
|
ge0div |
⊢ ( ( ( log ‘ 𝑋 ) ∈ ℝ ∧ ( log ‘ 𝐵 ) ∈ ℝ ∧ 0 < ( log ‘ 𝐵 ) ) → ( 0 ≤ ( log ‘ 𝑋 ) ↔ 0 ≤ ( ( log ‘ 𝑋 ) / ( log ‘ 𝐵 ) ) ) ) |
16 |
4 9 14 15
|
syl3anc |
⊢ ( ( 𝐵 ∈ ( ℤ≥ ‘ 2 ) ∧ 𝑋 ∈ ℝ+ ) → ( 0 ≤ ( log ‘ 𝑋 ) ↔ 0 ≤ ( ( log ‘ 𝑋 ) / ( log ‘ 𝐵 ) ) ) ) |
17 |
|
logge0b |
⊢ ( 𝑋 ∈ ℝ+ → ( 0 ≤ ( log ‘ 𝑋 ) ↔ 1 ≤ 𝑋 ) ) |
18 |
17
|
adantl |
⊢ ( ( 𝐵 ∈ ( ℤ≥ ‘ 2 ) ∧ 𝑋 ∈ ℝ+ ) → ( 0 ≤ ( log ‘ 𝑋 ) ↔ 1 ≤ 𝑋 ) ) |
19 |
2 16 18
|
3bitr2d |
⊢ ( ( 𝐵 ∈ ( ℤ≥ ‘ 2 ) ∧ 𝑋 ∈ ℝ+ ) → ( 0 ≤ ( 𝐵 logb 𝑋 ) ↔ 1 ≤ 𝑋 ) ) |