rw [coe_coe] at hg1
case h.right.inl
a b c : ℤθ
n : ℤ
h : n ≠ 0
p4 : 0 < n
p5 : 1 ≤ Int.toNat n
j : ℕ
g : ℤ
hg0 : 1 ≤ j
coe_coe : ↑(Int.toNat n) = n
hg1 : 3 * ↑(Int.toNat n) = 3 ^ j * (3 * g + 1)
⊢ 3 * n = 3 ^ j * (3 * g + 1) ∨ 3 * n = 3 ^ j * (3 * g + 2)

case h.right.inr
a b c : ℤθ
n : ℤ
h : n ≠ 0
p4 : 0 < n
p5 : 1 ≤ Int.toNat n
j : ℕ
g : ℤ
hg0 : 1 ≤ j
coe_coe : ↑(Int.toNat n) = n
hg2 : 3 * ↑(Int.toNat n) = 3 ^ j * (3 * g + 2)
⊢ 3 * n = 3 ^ j * (3 * g + 1) ∨ 3 * n = 3 ^ j * (3 * g + 2)

case inr
a b c : ℤθ
n : ℤ
h : n ≠ 0
p2 : n < 0
⊢ ∃ a b, 1 ≤ a ∧ (3 * n = 3 ^ a * (3 * b + 1) ∨ 3 * n = 3 ^ a * (3 * b + 2))
case h.right.inl
a b c : ℤθ
n : ℤ
h : n ≠ 0
p4 : 0 < n
p5 : 1 ≤ Int.toNat n
j : ℕ
g : ℤ
hg0 : 1 ≤ j
coe_coe : ↑(Int.toNat n) = n
hg1 : 3 * n = 3 ^ j * (3 * g + 1)
⊢ 3 * n = 3 ^ j * (3 * g + 1) ∨ 3 * n = 3 ^ j * (3 * g + 2)

case h.right.inr
a b c : ℤθ
n : ℤ
h : n ≠ 0
p4 : 0 < n
p5 : 1 ≤ Int.toNat n
j : ℕ
g : ℤ
hg0 : 1 ≤ j
coe_coe : ↑(Int.toNat n) = n
hg2 : 3 * ↑(Int.toNat n) = 3 ^ j * (3 * g + 2)
⊢ 3 * n = 3 ^ j * (3 * g + 1) ∨ 3 * n = 3 ^ j * (3 * g + 2)

case inr
a b c : ℤθ
n : ℤ
h : n ≠ 0
p2 : n < 0
⊢ ∃ a b, 1 ≤ a ∧ (3 * n = 3 ^ a * (3 * b + 1) ∨ 3 * n = 3 ^ a * (3 * b + 2))