Saturday 15 January 2011

logic - How do I Get OTTER to Generate All Tautologies of a Certain Length? -



logic - How do I Get OTTER to Generate All Tautologies of a Certain Length? -

in otter input next used generate bracket types of wffs of length 13 (length number of symbols not parentheses or predicate symbols), i(x,y) can read "x implies y".

set(hyper_res). clear(for_sub). clear(back_sub). assign(max_weight, 14). list(sos). -p(x) | -p(y) | p(i(x,y)). end_of_list. list(usable). p(x). end_of_list.

it's possible test whether or not formula tautology input this:

set(hyper_res). assign(stats_level, 1). clear(print_kept). list(usable). p(0). p(1). -p(x) | -p(y) | p(i(x,y)). end_of_list. list(sos). -p(x) | -p(y) | -p(z) | -p(u) | -p(v) | d2(p(i(i(i(x,y),i(i(i(n(z),n(u)),v),z)),i(w,i(i(z,x),i(u,x))))),1). end_of_list. list(demodulators). i(0,0)=1. i(0,1)=1. i(1,0)=0. i(1,1)=1. end_of_list. list(passive). d2(x,x). end_of_list.

update: next works input generate formulas re-lettering of length 7 without subsumption on, seems useful.

set(hyper_res). set(print_lists_at_end). assign(stats_level,0). list(sos). %generates relevant possibilities -p(i(i(i(x,y),z),u)) | -q(x,y,z,u) | r(i(i(i(x,y),z),u)). -p(i(i(x,i(y,z)),u)) | -q(x,y,z,u) | r(i(i(x,i(y,z)),u)). -p(i(i(x,y),i(z,u))) | -q(x,y,z,u) | r(i(i(x,y),i(z,u))). -p(i(x,i(i(y,z),u))) | -q(x,y,z,u) | r(i(x,i(i(y,z),u))). -p(i(x,i(y,i(z,u)))) | -q(x,y,z,u) | r(i(x,i(y,i(z,u)))). end_of_list. list(usable). % bracket types p(i(i(i(x,y),z),u)). p(i(i(x,i(y,z)),u)). p(i(i(x,y),i(z,u))). p(i(x,i(i(y,z),u))). p(i(x,i(y,i(z,u)))). %relevant permutations q(x,y,z,u). q(x,y,z,z). q(x,y,z,y). q(x,y,z,x). q(x,y,y,z). q(x,y,y,y). q(x,y,y,x). q(x,y,x,z). q(x,y,x,y). q(x,y,x,x). q(x,x,y,z). q(x,x,y,y). q(x,x,y,x). q(x,x,x,y). q(x,x,x,x). end_of_list.

but, i'm still not able combine above sort of input test of tautologies. how can otter generate formulas length, test formulas of length tautologies in single run such have variables in otter, x, y, z, u, w, v5, v6, ..., vn, in formula, , print tautologies? illustration of input works formulas length 7?

background: i'm wanting [to seek , find candidates single axioms implicational propositional calculus of length 13... edit, there's 1 axiom , literature has indicated while], find candidate single axioms conditional-negation (c-n) classical propositional of length 21 (or shorter?). if there exists way combine such input model checker mace4, mace2 such candidates can eliminated more efficiently and output candidates in form usable in proof-finding otter come helpful, , if can that, i'll seek , add together bounty question , grant points if find such program.

(see edits more failed attempts if like).

i'm still interested in how might combine above mace2 or mace4. also, doesn't indicate how might generation of bracket types, of possibilities of length, , testing tautologies downwards in single run. here's input find tautologies of length 7:

set(hyper_res). % hyperresolution rule of inference assign(max_proofs,-1). clear(for_sub). clear(back_sub). % lastly 2 clear forwards subsumption , subsumption assign(max_weight,8). clear(print_kept). % clears kept formulas weight_list(pick_and_purge). % these weighted maintain weight downwards entire run weight(y1(1,i(i(i(x,y),z),u)),1). weight(y2(1,i(i(x,i(y,z)),u)),1). weight(y3(1,i(i(x,y),i(z,u))),1). weight(y4(1,i(x,i(i(y,z),u))),1). weight(y5(1,i(x,i(y,i(z,u)))),1). end_of_list. list(sos). % set of back upwards list %generates relevant possibilities -p(i(i(i(x,y),z),u)) | -q(x,y,z,u) | r(i(i(i(x,y),z),u)). -p(i(i(x,i(y,z)),u)) | -q(x,y,z,u) | r(i(i(x,i(y,z)),u)). -p(i(i(x,y),i(z,u))) | -q(x,y,z,u) | r(i(i(x,y),i(z,u))). -p(i(x,i(i(y,z),u))) | -q(x,y,z,u) | r(i(x,i(i(y,z),u))). -p(i(x,i(y,i(z,u)))) | -q(x,y,z,u) | r(i(x,i(y,i(z,u)))). % infer yx(1, r), "r" indicates formula, % , "x" indicates bracket type of formula -r(i(i(i(x,y),z),u)) | -x(x) | -x(y) | -x(z) | -x(u) | y1(1,i(i(i(x,y),z),u)). -r(i(i(x,i(y,z)),u)) | -x(x) | -x(y) | -x(z) | -x(u) | y2(1,i(i(x,i(y,z)),u)). -r(i(i(x,y),i(z,u))) | -x(x) | -x(y) | -x(z) | -x(u) | y3(1,i(i(x,y),i(z,u))). -r(i(x,i(i(y,z),u))) | -x(x) | -x(y) | -x(z) | -x(u) | y4(1,i(x,i(i(y,z),u))). -r(i(x,i(y,i(z,u)))) | -x(x) | -x(y) | -x(z) | -x(u) | y5(1,i(x,i(y,i(z,u)))). end_of_list.

break

list(usable). % bracket types p(i(i(i(x,y),z),u)). p(i(i(x,i(y,z)),u)). p(i(i(x,y),i(z,u))). p(i(x,i(i(y,z),u))). p(i(x,i(y,i(z,u)))). %relevant permutations of variables... %(q(y,x,y,x) , q(x,y,x,y) same permutation, % , in general, in otter x first variable, % 1 of {x, y} second, 1 of {x, y, z} third, etc.) q(x,y,z,u). q(x,y,z,z). q(x,y,z,y). q(x,y,z,x). q(x,y,y,z). q(x,y,y,y). q(x,y,y,x). q(x,y,x,z). q(x,y,x,y). q(x,y,x,x). q(x,x,y,z). q(x,x,y,y). q(x,x,y,x). q(x,x,x,y). q(x,x,x,x). % truth values x(0). x(1). end_of_list.

break

list(demodulators). %two equations demodulate yx formulas i(0,x)=1. i(1,y)=y. end_of_list. list(passive). %negations of yx(1,0). -y1(1,0). -y2(1,0). -y3(1,0). -y4(1,0). -y5(1,0). end_of_list.

otter proves formulas of length 7 not tautologies. therefore, formulas remain in list of givens, have not gotten proved tautologies of length 7 (or equivalently weight 8).

logic theorem-proving

No comments:

Post a Comment