op(400, xfx, [*,+,#]). % infix operators op(300, yf, @). % postfix operator set(knuth_bendix). set(back_unit_deletion). clear(print_kept). clear(print_new_demod). clear(print_back_demod). clear(print_back_sub). assign(max_mem, 100000). assign(pick_given_ratio, 8). assign(max_weight, 110). assign(change_limit_after, 7). assign(new_max_weight, 30). assign(neg_weight, -4). % assign(max_proofs, -1). list(usable). x = x. end_of_list. list(sos). % Single axiom for BA (weight 127, 6 variables) (((x * x@ ) + ((x * y) + (x@ * y))) * ((((((z + (u + v)@ )@ + 0) * 1) + (z + v)@ )@ * w@ ) + ((((((z + (u + v)@ )@ + 0) * 1) + (z + v)@ )@ * z) + (w@ * z)))@ ) + ((((x * x@ ) + ((x * y) + (x@ * y))) * z) + (((((((z + (u + v)@ )@ + 0) * 1) + (z + v)@ )@ * w@ ) + ((((((z + (u + v)@ )@ + 0) * 1) + (z + v)@ )@ * z) + (w@ * z)))@ * z)) = y. % Denials: Hunting axioms and the dual. A + B != B + A | (A + B) + C != A + (B + C) | (A + B@)@ + (A@ + B@)@ != B | (A@ +B@ )@ !=A*B | $Ans(Huntington_axioms_or). A * B != B * A | (A * B) * C != A * (B * C) | (A * B@)@ * (A@ * B@)@ != B | (A@ *B@ )@ !=A+B | $Ans(Huntington_axioms_and). end_of_list. % list(passive). % % A + B != B + A | $Ans(Commutativity_or). % (A + B) + C != A + (B + C) | $Ans(Associativity_or). % (A + B@)@ + (A@ + B@)@ != B | $Ans(Huntington_or). % ((A + B)@ + (A + B@)@)@ != A | $Ans(Robbins_or). % % A * B != B * A | $Ans(Commutativity_and). % (A * B) * C != A * (B * C) | $Ans(Associativity_and). % (A * B@)@ * (A@ * B@)@ != B | $Ans(Huntington_and). % ((A * B)@ * (A * B@)@)@ != A | $Ans(Robbins_and). % % A@ @ != A | $Ans(L1). % A + A != A | $Ans(Idempotence_or). % A * A != A | $Ans(Idempotence_and). % % A + (B + A@)@ !=A | $Ans(L2_or). % A + (B + B@)@ !=A | $Ans(L3_or). % A + A@ != B + B@ | $Ans(One). % % A * (B * A@)@ !=A | $Ans(L2_and). % A * (B * B@)@ !=A | $Ans(L3_and). % A * A@ != B * B@ | $Ans(Zero). % % (A + B) * B != B | $Ans(A1). % A * (B + C) != (B * A) + (C * A) | $Ans(D1). % (B * A) + (C * A) != A * (B + C) | $Ans(D1). % A + A@ != 1 | $Ans(1). % % (A * B) + B != B | $Ans(A2). % A + (B * C) != (B + A) * (C + A) | $Ans(D2). % (B + A) * (C + A) != A + (B * C) | $Ans(D2). % A * A@ != 0 | $Ans(0). % % end_of_list.