TPTP Problem File: SWX203-1.p

View Solutions - Solve Problem

%------------------------------------------------------------------------------
% File     : SWX203-1 : TPTP v9.3.0. Released v9.3.0.
% Domain   : Software Verification
% Problem  : Faulty property about sortedness
% Version  : Especial.
% English  :

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

% Status   : Unsatisfiable
% Rating   : 0.22 v9.3.0
% Syntax   : Number of clauses     :   33 (  33 unt;   0 nHn;   7 RR)
%            Number of literals    :   33 (  33 equ;   1 neg)
%            Maximal clause size   :    1 (   1 avg)
%            Maximal term depth    :    8 (   2 avg)
%            Number of predicates  :    1 (   0 usr;   0 prp; 2-2 aty)
%            Number of functors    :   20 (  20 usr;   4 con; 0-3 aty)
%            Number of variables   :   40 (  14 sgn)
% SPC      : CNF_UNS_RFO_PEQ_UEQ

% Comments :
%------------------------------------------------------------------------------
cnf(axiom,axiom,
    aux(Y,Xs,btrue) = bfalse ).

cnf(axiom_001,axiom,
    aux(Y,Xs,bfalse) = unique(Xs) ).

cnf(axiom_002,axiom,
    orb(btrue,Q) = btrue ).

cnf(axiom_003,axiom,
    orb(bfalse,Q) = Q ).

cnf(axiom_004,axiom,
    leqNat(z,Y) = btrue ).

cnf(axiom_005,axiom,
    leqNat(s(Z),z) = bfalse ).

cnf(axiom_006,axiom,
    leqNat(s(Z),s(M)) = leqNat(Z,M) ).

cnf(axiom_007,axiom,
    lengthNat(nil) = z ).

cnf(axiom_008,axiom,
    lengthNat(cons(Y,Xs)) = s(lengthNat(Xs)) ).

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

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

cnf(axiom_011,axiom,
    elemNat(X,nil) = bfalse ).

cnf(axiom_012,axiom,
    elemNat(X,cons(Z,Xs)) = orb(eq(X,Z),elemNat(X,Xs)) ).

cnf(axiom_013,axiom,
    unique(nil) = btrue ).

cnf(axiom_014,axiom,
    unique(cons(Y,Xs)) = aux(Y,Xs,elemNat(Y,Xs)) ).

cnf(axiom_015,axiom,
    append(nil,Y) = Y ).

cnf(axiom_016,axiom,
    append(cons(Z,Xs),Y) = cons(Z,append(Xs,Y)) ).

cnf(axiom_017,axiom,
    rev(nil) = nil ).

cnf(axiom_018,axiom,
    rev(cons(Y,Xs)) = append(rev(Xs),cons(Y,nil)) ).

cnf(axiom_019,axiom,
    andb(btrue,Q) = Q ).

cnf(axiom_020,axiom,
    andb(bfalse,Q) = bfalse ).

cnf(axiom_021,axiom,
    sorted(nil) = btrue ).

cnf(axiom_022,axiom,
    sorted(cons(Y,nil)) = btrue ).

cnf(axiom_023,axiom,
    sorted(cons(Y,cons(Y2,Xs))) = andb(leqNat(Y,Y2),sorted(cons(Y2,Xs))) ).

cnf(axiom_024,axiom,
    psorted_rev(X) = impl(eq2(sorted(rev(X)),btrue),impl(eq2(unique(X),btrue),eq2(leqNat(lengthNat(X),s(s(s(z)))),btrue))) ).

cnf(axiom_025,axiom,
    eq2(bfalse,btrue) = bfalse ).

cnf(axiom_026,axiom,
    eq2(btrue,bfalse) = bfalse ).

cnf(axiom_027,axiom,
    eq(s(X),s(Y)) = eq(X,Y) ).

cnf(axiom_028,axiom,
    eq(z,s(X)) = bfalse ).

cnf(axiom_029,axiom,
    eq(s(X),z) = bfalse ).

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

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

cnf(goal,negated_conjecture,
    eq2(psorted_rev(X),bfalse) != btrue ).

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