TPTP Problem File: ITP209^3.p
View Solutions
- Solve Problem
%------------------------------------------------------------------------------
% File : ITP209^3 : TPTP v9.0.0. Released v8.1.0.
% Domain : Interactive Theorem Proving
% Problem : Sledgehammer problem Syntax_Match 00088_002922
% Version : [Des22] axioms.
% English :
% Refs : [BH+15] Blanchette et al. (2015), Mining the Archive of Formal
% : [Des22] Desharnais (2022), Email to Geoff Sutcliffe
% Source : [Des22]
% Names : 0023_Syntax_Match_00088_002922 [Des22]
% Status : Theorem
% Rating : 0.00 v8.2.0, 0.08 v8.1.0
% Syntax : Number of formulae : 17 ( 6 unt; 6 typ; 0 def)
% Number of atoms : 20 ( 13 equ; 0 cnn)
% Maximal formula atoms : 3 ( 1 avg)
% Number of connectives : 93 ( 0 ~; 0 |; 1 &; 86 @)
% ( 0 <=>; 6 =>; 0 <=; 0 <~>)
% Maximal formula depth : 7 ( 4 avg)
% Number of types : 2 ( 1 usr)
% Number of type conns : 17 ( 17 >; 0 *; 0 +; 0 <<)
% Number of symbols : 6 ( 5 usr; 3 con; 0-2 aty)
% Number of variables : 35 ( 1 ^; 34 !; 0 ?; 35 :)
% SPC : TH0_THM_EQU_NAR
% Comments : This file was generated by Isabelle (most likely Sledgehammer)
% from the van Emde Boas Trees session in the Archive of Formal
% proofs -
% www.isa-afp.org/browser_info/current/AFP/Van_Emde_Boas_Trees
% 2022-02-17 14:22:46.652
%------------------------------------------------------------------------------
% Could-be-implicit typings (1)
thf(ty_n_tf__a,type,
a: $tType ).
% Explicit typings (5)
thf(sy_c_Syntax__Match_Oac__operator_001tf__a,type,
syntax_ac_operator_a: ( a > a > a ) > $o ).
thf(sy_v_a,type,
a2: a ).
thf(sy_v_b,type,
b: a ).
thf(sy_v_c,type,
c: a ).
thf(sy_v_f,type,
f: a > a > a ).
% Relevant facts (10)
thf(fact_0_ac__operator__axioms,axiom,
syntax_ac_operator_a @ f ).
% ac_operator_axioms
thf(fact_1_commute,axiom,
! [A: a,B: a] :
( ( f @ A @ B )
= ( f @ B @ A ) ) ).
% commute
thf(fact_2_left__commute,axiom,
! [A: a,B: a,C: a] :
( ( f @ A @ ( f @ B @ C ) )
= ( f @ B @ ( f @ A @ C ) ) ) ).
% left_commute
thf(fact_3_right__assoc,axiom,
! [A: a,B: a,C: a] :
( ( f @ ( f @ A @ B ) @ C )
= ( f @ A @ ( f @ B @ C ) ) ) ).
% right_assoc
thf(fact_4_ac__operator_Ointro,axiom,
! [F: a > a > a] :
( ! [A2: a,B2: a,C2: a] :
( ( F @ ( F @ A2 @ B2 ) @ C2 )
= ( F @ A2 @ ( F @ B2 @ C2 ) ) )
=> ( ! [A2: a,B2: a] :
( ( F @ A2 @ B2 )
= ( F @ B2 @ A2 ) )
=> ( syntax_ac_operator_a @ F ) ) ) ).
% ac_operator.intro
thf(fact_5_ac__operator_Ocommute,axiom,
! [F: a > a > a,A: a,B: a] :
( ( syntax_ac_operator_a @ F )
=> ( ( F @ A @ B )
= ( F @ B @ A ) ) ) ).
% ac_operator.commute
thf(fact_6_ac__operator_Oleft__assoc,axiom,
! [F: a > a > a,A: a,B: a,C: a] :
( ( syntax_ac_operator_a @ F )
=> ( ( F @ A @ ( F @ B @ C ) )
= ( F @ ( F @ A @ B ) @ C ) ) ) ).
% ac_operator.left_assoc
thf(fact_7_ac__operator_Oright__assoc,axiom,
! [F: a > a > a,A: a,B: a,C: a] :
( ( syntax_ac_operator_a @ F )
=> ( ( F @ ( F @ A @ B ) @ C )
= ( F @ A @ ( F @ B @ C ) ) ) ) ).
% ac_operator.right_assoc
thf(fact_8_ac__operator_Oleft__commute,axiom,
! [F: a > a > a,A: a,B: a,C: a] :
( ( syntax_ac_operator_a @ F )
=> ( ( F @ A @ ( F @ B @ C ) )
= ( F @ B @ ( F @ A @ C ) ) ) ) ).
% ac_operator.left_commute
thf(fact_9_ac__operator__def,axiom,
( syntax_ac_operator_a
= ( ^ [F2: a > a > a] :
( ! [A3: a,B3: a,C3: a] :
( ( F2 @ ( F2 @ A3 @ B3 ) @ C3 )
= ( F2 @ A3 @ ( F2 @ B3 @ C3 ) ) )
& ! [A3: a,B3: a] :
( ( F2 @ A3 @ B3 )
= ( F2 @ B3 @ A3 ) ) ) ) ) ).
% ac_operator_def
% Conjectures (1)
thf(conj_0,conjecture,
( ( f @ ( f @ a2 @ b ) @ c )
= ( f @ ( f @ a2 @ c ) @ b ) ) ).
%------------------------------------------------------------------------------