have : sgn (a * sgn a) ≃ 1 := calc
  sgn (a * sgn a)     ≃ _ := sgn_compat_mul
  sgn a * sgn (sgn a) ≃ _ := AA.substR sgn_idemp
  sgn a * sgn a       ≃ _ := ‹sgn a * sgn a ≃ 1›
  1                   ≃ _ := Rel.refl
ℕ : Type
inst✝⁵ : Natural ℕ
ℤ : Type
inst✝⁴ : Core ℤ
inst✝³ : Addition ℤ
inst✝² : Multiplication ℤ
inst✝¹ : Negation ℤ
inst✝ : Sign ℤ
a : ℤ
x✝ : Nonzero a
this✝ : Sqrt1 (sgn a)
this : sgn a * sgn a ≃ 1
⊢ Positive (a * sgn a)
ℕ : Type
inst✝⁵ : Natural ℕ
ℤ : Type
inst✝⁴ : Core ℤ
inst✝³ : Addition ℤ
inst✝² : Multiplication ℤ
inst✝¹ : Negation ℤ
inst✝ : Sign ℤ
a : ℤ
x✝ : Nonzero a
this✝¹ : Sqrt1 (sgn a)
this✝ : sgn a * sgn a ≃ 1
this : sgn (a * sgn a) ≃ 1
⊢ Positive (a * sgn a)