TPTP Problem File: SWX187-1.p

View Solutions - Solve Problem

%------------------------------------------------------------------------------
% File     : SWX187-1 : TPTP v9.3.0. Released v9.3.0.
% Domain   : Software Verification
% Problem  : Faulty property of the function rot
% Version  : Especial.
% English  :

% Refs     : [CST26] Claessen et al. (2026), Email to Geoff Sutcliffe
% Source   : [CST26]
% Names    : Definitions_prop_rot_inj0.p [CST26]

% Status   : Unsatisfiable
% Rating   : 0.67 v9.3.0
% Syntax   : Number of clauses     :   29 (  27 unt;   0 nHn;   7 RR)
%            Number of literals    :   31 (  31 equ;   3 neg)
%            Maximal clause size   :    2 (   1 avg)
%            Maximal term depth    :    9 (   2 avg)
%            Number of predicates  :    1 (   0 usr;   0 prp; 2-2 aty)
%            Number of functors    :   16 (  16 usr;   4 con; 0-4 aty)
%            Number of variables   :   44 (  17 sgn)
% SPC      : CNF_UNS_RFO_PEQ_NUE

% Comments :
%------------------------------------------------------------------------------
cnf(axiom,axiom,
    notb(btrue) = bfalse ).

cnf(axiom_001,axiom,
    notb(bfalse) = btrue ).

cnf(axiom_002,axiom,
    length(nil) = z ).

cnf(axiom_003,axiom,
    length(cons(Y,Xs)) = s(length(Xs)) ).

cnf(axiom_004,axiom,
    impl(btrue,Q) = Q ).

cnf(axiom_005,axiom,
    impl(bfalse,Q) = btrue ).

cnf(axiom_006,axiom,
    x2(s(Z),s(Y2)) = x2(Z,Y2) ).

cnf(axiom_007,axiom,
    x2(s(Z),z) = bfalse ).

cnf(axiom_008,axiom,
    x2(z,s(X2)) = btrue ).

cnf(axiom_009,axiom,
    x2(z,z) = bfalse ).

cnf(axiom_010,axiom,
    x(nil,Y) = Y ).

cnf(axiom_011,axiom,
    x(cons(Z,Xs),Y) = cons(Z,x(Xs,Y)) ).

cnf(axiom_012,axiom,
    rotate(s(Z),nil) = nil ).

cnf(axiom_013,axiom,
    rotate(s(Z),cons(X2,X3)) = rotate(Z,x(X3,cons(X2,nil))) ).

cnf(axiom_014,axiom,
    rotate(z,Y) = Y ).

cnf(axiom_015,axiom,
    prop_rot_inj0(X,Y,Z,X2) = impl(eq3(x2(X,length(X2)),btrue),impl(eq3(x2(Y,length(Z)),btrue),impl(eq(X2,Z),impl(notb(eq(rotate(s(z),X2),X2)),impl(eq(rotate(X,X2),rotate(Y,Z)),eq2(X,Y)))))) ).

cnf(axiom_016,axiom,
    eq3(bfalse,btrue) = bfalse ).

cnf(axiom_017,axiom,
    eq3(btrue,bfalse) = bfalse ).

cnf(axiom_018,axiom,
    eq2(s(X),s(Y)) = eq2(X,Y) ).

cnf(axiom_019,axiom,
    eq2(s(X),z) = bfalse ).

cnf(axiom_020,axiom,
    eq2(z,s(X)) = bfalse ).

cnf(axiom_021,axiom,
    eq(X,X) = btrue ).

cnf(axiom_022,axiom,
    eq2(X,X) = btrue ).

cnf(axiom_023,axiom,
    eq3(X,X) = btrue ).

cnf(axiom_024,axiom,
    ( eq2(X,Z) != bfalse
    | eq(cons(X,Y),cons(Z,X2)) = bfalse ) ).

cnf(axiom_025,axiom,
    ( eq2(X,Z) != btrue
    | eq(cons(X,Y),cons(Z,X2)) = eq(Y,X2) ) ).

cnf(axiom_026,axiom,
    eq(nil,cons(X,Y)) = bfalse ).

cnf(axiom_027,axiom,
    eq(cons(X,Y),nil) = bfalse ).

cnf(goal,negated_conjecture,
    eq3(prop_rot_inj0(X,Y,Z,X2),bfalse) != btrue ).

%------------------------------------------------------------------------------