op(400,xfx,*). set(para_from). set(para_into). set(para_from_vars). set(para_into_vars). set(order_eq). % set(geometric_rule). % set(geometric_rewrite_before). assign(pick_given_ratio, 4). clear(print_kept). clear(print_new_demod). clear(print_back_demod). assign(max_mem, 30000). assign(max_weight, 17). % set(back_demod). % set(process_input). %%%%%%%%%%%%%%%%%%%%% Modifications to basic gL strategy below. assign(max_weight, 1). set(hyper_res). set(para_from_units_only). set(para_into_units_only). list(usable). x = x. g(x1,x2,x3,x4,x5) != f(x1,x2,x3,x4,x5) | g(x2,x3,x4,x5,x1) = f(x2,x3,x4,x5,x1). end_of_list. list(sos). % f(x,y,z,u,v) = f(x,y,z,v,u). f(e,e,e,e,e) = e. f(u,v,w,x,f(u,v,w,x,y)) = y. % g(x,y,z,u,v) = g(x,y,z,v,u). g(e,e,e,e,e) = e. g(u,v,w,x,g(u,v,w,x,y)) = y. f(x,y,z,u,g(v,w,v6,u,v7))=f(x,y,z,v8,g(v,w,v6,v8,v7)). end_of_list. list(passive). g(A,B,C,D,E) != f(A,B,C,D,E). end_of_list. weight_list(pick_given). % multiply symbol count by 10, then subtract 1 for each variable. weight(e,10). weight(x,9). weight(f($(1),$(1),$(1),$(1),$(1)),10). weight(g($(1),$(1),$(1),$(1),$(1)),10). weight($(1)=$(1),10). end_of_list. weight_list(purge_gen). weight(x, 0). weight(e, 0). weight(g($(1),$(1),$(1),$(1),$(1))=f($(1),$(1),$(1),$(1),$(1)), 1). % g=f weight(f($(1),$(1),$(1),$(1),g($(1),$(1),$(1),$(1),$(1)))=$(1), 1). % fg=[ex] end_of_list.