TPTP Problem File: MGT108+1.p

View Solutions - Solve Problem

%--------------------------------------------------------------------------
% File     : MGT108+1 : TPTP v9.3.1. Bugfixed v9.3.1.
% Domain   : Management
% Problem  : 4-axis drone policy is satisfiable
% Version  : Especial.
% English  : Drone: W [200,800], H [100,600], D [8,32], Alt [72,300]. 
%            Witness: (400,300,16,150).

% Refs       [MC+26] Mustafa et al. (2026), Axis Decomposition for ODRL
% Source     [MC+26]
% Names      ODRL769-1.p [MC+26]

% Status   : Satisfiable
% Rating   : ? v9.3.1
% Syntax   : Number of formulae    :   52 (  30 unt;   0 def)
%            Number of atoms       :  174 (  89 equ)
%            Maximal formula atoms :   66 (   3 avg)
%            Number of connectives :  195 (  73   ~;   9   |;  93   &)
%                                         (   8 <=>;  12  =>;   0  <=;   0 <~>)
%            Maximal formula depth :   67 (   5 avg)
%            Maximal term depth    :    2 (   1 avg)
%            Number of predicates  :   12 (  11 usr;   0 prp; 1-4 aty)
%            Number of functors    :   16 (  16 usr;  15 con; 0-2 aty)
%            Number of variables   :   57 (  55   !;   2   ?)
% SPC      : FOF_SAT_RFO_SEQ

% Comments : 
% Bugfixes : v9.3.1 - $distinct expanded to inequalities.
%--------------------------------------------------------------------------
include('Axioms/MGT002+0.ax').
include('Axioms/MGT002+2.ax').
%--------------------------------------------------------------------------
%----Named constants and witness axioms 
fof(val_v0,axiom,
    val(v0) ).

fof(val_v8,axiom,
    val(v8) ).

fof(val_v16,axiom,
    val(v16) ).

fof(val_v32,axiom,
    val(v32) ).

fof(val_v72,axiom,
    val(v72) ).

fof(val_v100,axiom,
    val(v100) ).

fof(val_v150,axiom,
    val(v150) ).

fof(val_v200,axiom,
    val(v200) ).

fof(val_v300,axiom,
    val(v300) ).

fof(val_v400,axiom,
    val(v400) ).

fof(val_v600,axiom,
    val(v600) ).

fof(val_v800,axiom,
    val(v800) ).

fof(ord_v0_v8,axiom,
    less(v0,v8) ).

fof(ord_v8_v16,axiom,
    less(v8,v16) ).

fof(ord_v16_v32,axiom,
    less(v16,v32) ).

fof(ord_v32_v72,axiom,
    less(v32,v72) ).

fof(ord_v72_v100,axiom,
    less(v72,v100) ).

fof(ord_v100_v150,axiom,
    less(v100,v150) ).

fof(ord_v150_v200,axiom,
    less(v150,v200) ).

fof(ord_v200_v300,axiom,
    less(v200,v300) ).

fof(ord_v300_v400,axiom,
    less(v300,v400) ).

fof(ord_v400_v600,axiom,
    less(v400,v600) ).

fof(ord_v600_v800,axiom,
    less(v600,v800) ).

fof(distinct,axiom,
    ( v0 != v8
    & v0 != v16
    & v0 != v32
    & v0 != v72
    & v0 != v100
    & v0 != v150
    & v0 != v200
    & v0 != v300
    & v0 != v400
    & v0 != v600
    & v0 != v800
    & v8 != v16
    & v8 != v32
    & v8 != v72
    & v8 != v100
    & v8 != v150
    & v8 != v200
    & v8 != v300
    & v8 != v400
    & v8 != v600
    & v8 != v800
    & v16 != v32
    & v16 != v72
    & v16 != v100
    & v16 != v150
    & v16 != v200
    & v16 != v300
    & v16 != v400
    & v16 != v600
    & v16 != v800
    & v32 != v72
    & v32 != v100
    & v32 != v150
    & v32 != v200
    & v32 != v300
    & v32 != v400
    & v32 != v600
    & v32 != v800
    & v72 != v100
    & v72 != v150
    & v72 != v200
    & v72 != v300
    & v72 != v400
    & v72 != v600
    & v72 != v800
    & v100 != v150
    & v100 != v200
    & v100 != v300
    & v100 != v400
    & v100 != v600
    & v100 != v800
    & v150 != v200
    & v150 != v300
    & v150 != v400
    & v150 != v600
    & v150 != v800
    & v200 != v300
    & v200 != v400
    & v200 != v600
    & v200 != v800
    & v300 != v400
    & v300 != v600
    & v300 != v800
    & v400 != v600
    & v400 != v800
    & v600 != v800 ) ).

fof(witness,axiom,
    ( leq(v200,v400)
    & leq(v400,v800)
    & leq(v100,v300)
    & leq(v300,v600)
    & leq(v8,v16)
    & leq(v16,v32)
    & leq(v72,v150)
    & leq(v150,v300) ) ).

%----No conjecture - satisfiability check 
%--------------------------------------------------------------------------