% clear automatic strategy selection and preprocessing
clear(auto).
% use capital letters (A,X,T,...) as vars
set(prolog_style_variables).
% select the search strategy
%set(pos_hyper_resolution).
set(hyper_res).
set(factor).
%set(positive_inference).
%set(paramodulation).
set(para_into).
set(para_from).
% select sensible amount of output
%clear(echo_input).
%clear(print_initial_clauses). % remove this to see input!
clear(print_given).
set(print_kept). % this is important: prints all generated and kept clauses
assign(stats_level, 0).
% just make it stop after N secs
assign(max_seconds, 10).
% useful iff you want to have several proofs/more than one query answer
assign(max_proofs, 1000000).
formula_list(sos).
type(car1,van,1).
type(car2,van,2).
type(car3,bike,3).
subclass(van,vehicle,4).
subclass(vehicle,thing,5).
all X all Y all Z all P all Q
(type(X,Y,P) & subclass(Y,Z,Q) -> type(X,Z,$PROD(P,Q))) .
% example query: remove if you do not want to query
all X all Z (-type(X,thing,Z) | $answer(X,Z)).
end_of_list.