fact: Definition pick_lines (ss : SS.t) (sp : SP.t) : (option (SS.elt * SS.elt)) := match (exists_witness (fun s => match (pick_lines_aux s (SS.remove s ss) sp) with | None => false | _ => true end) ss) with | None => None | Some s1 => pick_lines_aux s1 (SS.remove s1 ss) sp end.
imports: Recdef NArith GeoCoq.Utils.sets