+ GA.Executable(floc,GA.Command(floc,GA.Obj(floc,o)));
+ GA.Executable(floc,GA.Tactical(floc, GA.Tactic(floc,
+ GA.Intros (floc,None,[])),Some (GA.Dot(floc))))] @
+ (if fv <> [] then
+ (List.flatten
+ (List.map
+ (fun _ ->
+ [GA.Executable(floc,GA.Tactical(floc, GA.Tactic(floc,
+ GA.Exists floc),Some (GA.Branch floc)));
+ GA.Executable(floc,GA.Tactical(floc,
+ GA.Pos (floc,[2]),None))])
+ fv))
+ else [])@
+ [GA.Executable(floc,GA.Tactical(floc, GA.Tactic(floc,
+ GA.Auto (floc,None,None,Some "paramodulation",None)),
+ Some (GA.Dot(floc))))]@
+ (if fv <> [] then
+ (List.flatten
+ (List.map
+ (fun _ ->
+ [GA.Executable(floc,GA.Tactical(floc, GA.Shift floc, None));
+ GA.Executable(floc,GA.Tactical(floc, GA.Skip floc,Some
+ (GA.Merge floc)))])
+ fv))
+ else [])@
+ [GA.Executable(floc,GA.Tactical(floc, GA.Try(floc,
+ GA.Tactic (floc, GA.Assumption floc)), Some (GA.Dot(floc))));
+ GA.Executable(floc,GA.Command(floc, GA.Qed(floc)))],