∀ {α : Type} (decls : Array (Std.Sat.AIG.Decl α)) (hinv : Std.Sat.AIG.IsDAG α decls) (acc : String) (idx : ℕ)
  (hidx : idx < decls.size) (lhs rhs : Std.Sat.AIG.Fanin) (elem : decls[idx] = Std.Sat.AIG.Decl.gate lhs rhs),
  lhs.gate < idx ∧ rhs.gate < idx →
    ∀ (laig : String),
      InvImage (fun x1 x2 => x1 < x2) (fun x => PSigma.casesOn x fun acc idx => PSigma.casesOn idx fun idx hidx => idx)
        ⟨laig, ⟨rhs.gate, ⋯⟩⟩ ⟨acc, ⟨idx, hidx⟩⟩