{aig : Std.Sat.AIG ℕ} →
  {motive : Std.Sat.AIG.toCNF.State✝ aig → Sort u} →
    (t : Std.Sat.AIG.toCNF.State✝¹ aig) →
      ((cnf : Std.Sat.CNF ℕ) →
          (cache : Std.Sat.AIG.toCNF.Cache✝ aig cnf) →
            (inv : Std.Sat.AIG.toCNF.State.Inv✝ aig cnf) → motive { cnf := cnf, cache := cache, inv := inv }) →
        motive t