TPTP Problem File: MGT080+1.p

View Solutions - Solve Problem

%--------------------------------------------------------------------------
% File     : MGT080+1 : TPTP v9.3.1. Bugfixed v9.3.1.
% Domain   : Management
% Problem  : Width eq conflict (mixed ops) => box Conflict
% Version  : Especial.
% English  : Width: eq 600 intersection eq 800 = {600}intersection{800} =
%            null Conflict (distinct)
%            Height: gt 100 intersection lt 500 = (100,500) Compatible
%            Depth/Alt: Compatible
%            Conflict proved by X distinctness - no density needed.

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

% Status   : Theorem
% Rating   : ? v9.3.1
% Syntax   : Number of formulae    :   74 (  52 unt;   0 def)
%            Number of atoms       :  166 (  59 equ)
%            Maximal formula atoms :   36 (   2 avg)
%            Number of connectives :  136 (  44   ~;   9   |;  63   &)
%                                         (   8 <=>;  12  =>;   0  <=;   0 <~>)
%            Maximal formula depth :   37 (   3 avg)
%            Maximal term depth    :    2 (   1 avg)
%            Number of predicates  :   12 (  11 usr;   0 prp; 1-4 aty)
%            Number of functors    :   13 (  13 usr;  12 con; 0-2 aty)
%            Number of variables   :   61 (  55   !;   6   ?)
% SPC      : FOF_THM_RFO_SEQ

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

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

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

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

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

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

fof(val_v500,axiom,
    val(v500) ).

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

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

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

fof(ord_v0_v32,axiom,
    less(v0,v32) ).

fof(ord_v0_v100,axiom,
    less(v0,v100) ).

fof(ord_v0_v150,axiom,
    less(v0,v150) ).

fof(ord_v0_v300,axiom,
    less(v0,v300) ).

fof(ord_v0_v500,axiom,
    less(v0,v500) ).

fof(ord_v0_v600,axiom,
    less(v0,v600) ).

fof(ord_v0_v800,axiom,
    less(v0,v800) ).

fof(ord_v8_v32,axiom,
    less(v8,v32) ).

fof(ord_v8_v100,axiom,
    less(v8,v100) ).

fof(ord_v8_v150,axiom,
    less(v8,v150) ).

fof(ord_v8_v300,axiom,
    less(v8,v300) ).

fof(ord_v8_v500,axiom,
    less(v8,v500) ).

fof(ord_v8_v600,axiom,
    less(v8,v600) ).

fof(ord_v8_v800,axiom,
    less(v8,v800) ).

fof(ord_v32_v100,axiom,
    less(v32,v100) ).

fof(ord_v32_v150,axiom,
    less(v32,v150) ).

fof(ord_v32_v300,axiom,
    less(v32,v300) ).

fof(ord_v32_v500,axiom,
    less(v32,v500) ).

fof(ord_v32_v600,axiom,
    less(v32,v600) ).

fof(ord_v32_v800,axiom,
    less(v32,v800) ).

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

fof(ord_v100_v300,axiom,
    less(v100,v300) ).

fof(ord_v100_v500,axiom,
    less(v100,v500) ).

fof(ord_v100_v600,axiom,
    less(v100,v600) ).

fof(ord_v100_v800,axiom,
    less(v100,v800) ).

fof(ord_v150_v300,axiom,
    less(v150,v300) ).

fof(ord_v150_v500,axiom,
    less(v150,v500) ).

fof(ord_v150_v600,axiom,
    less(v150,v600) ).

fof(ord_v150_v800,axiom,
    less(v150,v800) ).

fof(ord_v300_v500,axiom,
    less(v300,v500) ).

fof(ord_v300_v600,axiom,
    less(v300,v600) ).

fof(ord_v300_v800,axiom,
    less(v300,v800) ).

fof(ord_v500_v600,axiom,
    less(v500,v600) ).

fof(ord_v500_v800,axiom,
    less(v500,v800) ).

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

fof(distinct,axiom,
    ( v0 != v8
    & v0 != v32
    & v0 != v100
    & v0 != v150
    & v0 != v300
    & v0 != v500
    & v0 != v600
    & v0 != v800
    & v8 != v32
    & v8 != v100
    & v8 != v150
    & v8 != v300
    & v8 != v500
    & v8 != v600
    & v8 != v800
    & v32 != v100
    & v32 != v150
    & v32 != v300
    & v32 != v500
    & v32 != v600
    & v32 != v800
    & v100 != v150
    & v100 != v300
    & v100 != v500
    & v100 != v600
    & v100 != v800
    & v150 != v300
    & v150 != v500
    & v150 != v600
    & v150 != v800
    & v300 != v500
    & v300 != v600
    & v300 != v800
    & v500 != v600
    & v500 != v800
    & v600 != v800 ) ).

fof(odrl365,conjecture,
    ~ ? [X,Y,Z,W] :
        ( in_closed(X,v600,v600)
        & in_closed(X,v800,v800)
        & less(v100,Y)
        & in_open(Y,v0,v500)
        & leq(v8,Z)
        & in_lopen(Z,v0,v32)
        & in_lopen(W,v0,v300)
        & leq(v150,W) ) ).

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