TPTP Problem File: SWX198+1.p
View Solutions
- Solve Problem
%------------------------------------------------------------------------------
% File : SWX198+1 : TPTP v9.3.0. Released v9.3.0.
% Domain : Software Verification
% Problem : Faulty property about orderedness
% Version : Especial.
% English :
% Refs : [CST26] Claessen et al. (2026), Email to Geoff Sutcliffe
% Source : [CST26]
% Names : MergeSort_pallsmall.p [CST26]
% Status : Theorem
% Rating : 1.00 v9.3.0
% Syntax : Number of formulae : 24 ( 19 unt; 0 def)
% Number of atoms : 32 ( 11 equ)
% Maximal formula atoms : 3 ( 1 avg)
% Number of connectives : 14 ( 6 ~; 0 |; 2 &)
% ( 4 <=>; 2 =>; 0 <=; 0 <~>)
% Maximal formula depth : 6 ( 3 avg)
% Maximal term depth : 3 ( 1 avg)
% Number of predicates : 5 ( 4 usr; 0 prp; 1-2 aty)
% Number of functors : 10 ( 10 usr; 2 con; 0-2 aty)
% Number of variables : 33 ( 32 !; 1 ?)
% SPC : FOF_THM_RFO_SEQ
% Comments :
%------------------------------------------------------------------------------
fof(axiom_001,axiom,
! [X,X2] : head(cons(X,X2)) = X ).
fof(axiom_002,axiom,
! [X,X2] : tail(cons(X,X2)) = X2 ).
fof(axiom_003,axiom,
! [X,X2] : nil != cons(X,X2) ).
fof(axiom_004,axiom,
! [X] : proj1S(s(X)) = X ).
fof(axiom_005,axiom,
! [X] : z != s(X) ).
fof(axiom_006,axiom,
~ ltNat(z,z) ).
fof(axiom_007,axiom,
! [Z] : ltNat(z,s(Z)) ).
fof(axiom_008,axiom,
! [X2] : ~ ltNat(s(X2),z) ).
fof(axiom_009,axiom,
! [X2,M] :
( ltNat(s(X2),s(M))
<=> ltNat(X2,M) ) ).
fof(axiom_010,axiom,
usorted(nil) ).
fof(axiom_011,axiom,
! [Y] : usorted(cons(Y,nil)) ).
fof(axiom_012,axiom,
! [Y,Y2,Xs] :
( usorted(cons(Y,cons(Y2,Xs)))
<=> ( ltNat(Y,Y2)
& usorted(cons(Y2,Xs)) ) ) ).
fof(axiom_013,axiom,
! [Y] : leqNat(z,Y) ).
fof(axiom_014,axiom,
! [Z] : ~ leqNat(s(Z),z) ).
fof(axiom_015,axiom,
! [Z,M] :
( leqNat(s(Z),s(M))
<=> leqNat(Z,M) ) ).
fof(axiom_016,axiom,
lengthNat(nil) = z ).
fof(axiom_017,axiom,
! [Y,Xs] : lengthNat(cons(Y,Xs)) = s(lengthNat(Xs)) ).
fof(axiom_018,axiom,
! [Y] : append(nil,Y) = Y ).
fof(axiom_019,axiom,
! [Y,Z,Xs] : append(cons(Z,Xs),Y) = cons(Z,append(Xs,Y)) ).
fof(axiom_020,axiom,
rev(nil) = nil ).
fof(axiom_021,axiom,
! [Y,Xs] : rev(cons(Y,Xs)) = append(rev(Xs),cons(Y,nil)) ).
fof(axiom_022,axiom,
! [X] : allsmall(X,nil) ).
fof(axiom_023,axiom,
! [X,Z,Xs] :
( allsmall(X,cons(Z,Xs))
<=> ( ltNat(Z,X)
& allsmall(X,Xs) ) ) ).
fof(goal_024,conjecture,
? [Xs] :
~ ( usorted(rev(Xs))
=> ( allsmall(s(z),Xs)
=> leqNat(lengthNat(Xs),s(s(z))) ) ) ).
%------------------------------------------------------------------------------