TPTP Problem File: MSC029^1.p

View Solutions - Solve Problem

%------------------------------------------------------------------------------
% File     : MSC029^1 : TPTP v7.5.0. Released v7.0.0.
% Domain   : Miscellaneous (Permutation and combination)
% Problem  : International Mathematical Olympiad, 1963, Problem 6
% Version  : [Mat16] axioms : Especial.
% English  : Five students, A, B, C, D, E, took part in a contest. One 
%            prediction was that the contestants would finish in the order 
%            ABCDE. This prediction was very poor. In fact no contestant 
%            finished in the position predicted, and no two contestants 
%            predicted to finish consecutively actually did so.  A second 
%            prediction had the contestants finishing in the order DAECB.  
%            This prediction was better. Exactly two of the contestants 
%            finished in the places predicted, and two disjoint pairs of 
%            students predicted to finish consecutively actually did so. 
%            Determine the order in which the contestants finished.

% Refs     : [Mat16] Matsuzaki (2016), Email to Geoff Sutcliffe
%          : [MI+16] Matsuzaki et al. (2016), Race against the Teens - Benc
% Source   : [Mat16]
% Names    : IMO-1963-6.p [Mat16]

% Status   : Theorem
% Rating   : ? v7.0.0
% Syntax   : Number of formulae    : 3485 (   0 unit;1199 type;   0 defn)
%            Number of atoms       : 45619 (2280 equality;22803 variable)
%            Maximal formula depth :   36 (   9 average)
%            Number of connectives : 39818 ( 149   ~; 244   |;1234   &;36065   @)
%                                         (1095 <=>;1031  =>;   0  <=;   0 <~>)
%                                         (   0  ~|;   0  ~&)
%            Number of type conns  : 2408 (2408   >;   0   *;   0   +;   0  <<)
%            Number of symbols     : 1246 (1199   :;   0   =;   0  @=)
%                                         (   0  !!;   0  ??;   0 @@+;   0 @@-)
%            Number of variables   : 8062 (  66 sgn;7085   !; 434   ?; 407   ^)
%                                         (8062   :; 136  !>;   0  ?*)
%                                         (   0  @-;   0  @+)
%            Arithmetic symbols    : 1980 (   6 prd;   9 fun;  23 num;1942 var)
% SPC      : TH1_THM_EQU_ARI

% Comments : Theory: PA(comb); Score: 8; Author: Takuya Matsuzaki;
%            Generated: 2015-01-24
%          : Answer
%            ^ [V_ABCDE_dot_0: ( 'ListOf' @ $real )] :
%              ( V_ABCDE_dot_0
%              = ( 'cons/2' @ $real @ 3.0 @ ( 'cons/2' @ $real @ 5.0 @ ( 'cons/2' @ $real @ 4.0 @ ( 'cons/2' @ $real @ 2.0 @ ( 'cons/2' @ $real @ 1.0 @ ( 'nil/0' @ $real ) ) ) ) ) ) ) )
%------------------------------------------------------------------------------
include('Axioms/MAT001^0.ax').
%------------------------------------------------------------------------------
thf(p_qustion,conjecture,
    ( 'find/1' @ ( 'ListOf' @ $real )
    @ ^ [V_ABCDE: ( 'ListOf' @ $real )] :
      ? [V_A: $real,V_B: $real,V_C: $real,V_D: $real,V_E: $real] :
        ( ( V_ABCDE
          = ( 'cons/2' @ $real @ V_A @ ( 'cons/2' @ $real @ V_B @ ( 'cons/2' @ $real @ V_C @ ( 'cons/2' @ $real @ V_D @ ( 'cons/2' @ $real @ V_E @ ( 'nil/0' @ $real ) ) ) ) ) ) )
        & ( 'all/2' @ $real
          @ ^ [V_x: $real] :
              ( 'member/2' @ $real @ V_x @ ( 'cons/2' @ $real @ 1.0 @ ( 'cons/2' @ $real @ 2.0 @ ( 'cons/2' @ $real @ 3.0 @ ( 'cons/2' @ $real @ 4.0 @ ( 'cons/2' @ $real @ 5.0 @ ( 'nil/0' @ $real ) ) ) ) ) ) )
          @ ( 'cons/2' @ $real @ V_A @ ( 'cons/2' @ $real @ V_B @ ( 'cons/2' @ $real @ V_C @ ( 'cons/2' @ $real @ V_D @ ( 'cons/2' @ $real @ V_E @ ( 'nil/0' @ $real ) ) ) ) ) ) )
        & ( 'pairwise-distinct/1' @ $real @ ( 'cons/2' @ $real @ V_A @ ( 'cons/2' @ $real @ V_B @ ( 'cons/2' @ $real @ V_C @ ( 'cons/2' @ $real @ V_D @ ( 'cons/2' @ $real @ V_E @ ( 'nil/0' @ $real ) ) ) ) ) ) )
        & ( V_A != 1.0 )
        & ( V_B != 2.0 )
        & ( V_C != 3.0 )
        & ( V_D != 4.0 )
        & ( V_E != 5.0 )
        & ( ( $sum @ V_A @ 1.0 )
         != V_B )
        & ( ( $sum @ V_B @ 1.0 )
         != V_C )
        & ( ( $sum @ V_C @ 1.0 )
         != V_D )
        & ( ( $sum @ V_D @ 1.0 )
         != V_E )
        & ( ( ( V_D = 1.0 )
            & ( V_A = 2.0 )
            & ( V_E != 3.0 )
            & ( V_C != 4.0 )
            & ( V_B != 5.0 ) )
          | ( ( V_D = 1.0 )
            & ( V_A != 2.0 )
            & ( V_E = 3.0 )
            & ( V_C != 4.0 )
            & ( V_B != 5.0 ) )
          | ( ( V_D = 1.0 )
            & ( V_A != 2.0 )
            & ( V_E != 3.0 )
            & ( V_C = 4.0 )
            & ( V_B != 5.0 ) )
          | ( ( V_D = 1.0 )
            & ( V_A != 2.0 )
            & ( V_E != 3.0 )
            & ( V_C != 4.0 )
            & ( V_B = 5.0 ) )
          | ( ( V_D != 1.0 )
            & ( V_A = 2.0 )
            & ( V_E = 3.0 )
            & ( V_C != 4.0 )
            & ( V_B != 5.0 ) )
          | ( ( V_D != 1.0 )
            & ( V_A = 2.0 )
            & ( V_E != 3.0 )
            & ( V_C = 4.0 )
            & ( V_B != 5.0 ) )
          | ( ( V_D != 1.0 )
            & ( V_A = 2.0 )
            & ( V_E != 3.0 )
            & ( V_C != 4.0 )
            & ( V_B = 5.0 ) )
          | ( ( V_D != 1.0 )
            & ( V_A != 2.0 )
            & ( V_E = 3.0 )
            & ( V_C = 4.0 )
            & ( V_B != 5.0 ) )
          | ( ( V_D != 1.0 )
            & ( V_A != 2.0 )
            & ( V_E = 3.0 )
            & ( V_C != 4.0 )
            & ( V_B = 5.0 ) )
          | ( ( V_D != 1.0 )
            & ( V_A != 2.0 )
            & ( V_E != 3.0 )
            & ( V_C = 4.0 )
            & ( V_B = 5.0 ) ) )
        & ( ( ( ( $sum @ V_D @ 1.0 )
              = V_A )
            & ( ( $sum @ V_A @ 1.0 )
             != V_E )
            & ( ( $sum @ V_E @ 1.0 )
              = V_C )
            & ( ( $sum @ V_C @ 1.0 )
             != V_B ) )
          | ( ( ( $sum @ V_D @ 1.0 )
              = V_A )
            & ( ( $sum @ V_A @ 1.0 )
             != V_E )
            & ( ( $sum @ V_E @ 1.0 )
             != V_C )
            & ( ( $sum @ V_C @ 1.0 )
              = V_B ) )
          | ( ( ( $sum @ V_D @ 1.0 )
             != V_A )
            & ( ( $sum @ V_A @ 1.0 )
              = V_E )
            & ( ( $sum @ V_E @ 1.0 )
             != V_C )
            & ( ( $sum @ V_C @ 1.0 )
              = V_B ) ) ) ) )).

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