fact: Fixpoint clauses_update (l: lit) (c: list lit) (cs: clauses) {struct cs}: clauses := match cs with nil => nil | (n , c1) :: cs1 => if lit_is_in l c1 then clauses_update l c cs1 else let res := lit_rm c c1 in clause_insert res (clauses_update l c cs1) end.
imports: List UList Permutation Div OrderedList ListOp Lia