%------------------------------------------------------------------------------ % File : GEO007+0 : TPTP v7.2.0. Bugfixed v6.4.0. % Domain : Geometry (Constructive) % Axioms : Ordered affine geometry % Version : [vPl98] axioms. % English : % Refs : [vPl98] von Plato (1998), A Constructive Theory of Ordered Aff % Source : [ILTP] % Names : % Status : Satisfiable % Syntax : Number of formulae : 31 ( 7 unit) % Number of atoms : 102 ( 0 equality) % Maximal formula depth : 13 ( 6 average) % Number of connectives : 87 ( 16 ~; 24 |; 25 &) % ( 5 <=>; 17 =>; 0 <=; 0 <~>) % ( 0 ~|; 0 ~&) % Number of predicates : 12 ( 0 propositional; 1-4 arity) % Number of functors : 4 ( 0 constant; 1-2 arity) % Number of variables : 71 ( 0 sgn; 71 !; 0 ?) % Maximal term depth : 3 ( 1 average) % SPC : % Comments : % Bugfixes : v6.4.0 - Fixed oag8. %------------------------------------------------------------------------------ %----Abbreviations fof(apt_def,axiom,( ! [A,L] : ( apart_point_and_line(A,L) <=> ( left_apart_point(A,L) | left_apart_point(A,reverse_line(L)) ) ) )). fof(con_def,axiom,( ! [L,M] : ( convergent_lines(L,M) <=> ( unequally_directed_lines(L,M) & unequally_directed_lines(L,reverse_line(M)) ) ) )). fof(div_def,axiom,( ! [A,B,L] : ( divides_points(L,A,B) <=> ( ( left_apart_point(A,L) & left_apart_point(B,reverse_line(L)) ) | ( left_apart_point(A,reverse_line(L)) & left_apart_point(B,L) ) ) ) )). fof(bf_def,axiom,( ! [L,A,B] : ( before_on_line(L,A,B) <=> ( distinct_points(A,B) & ~ ( left_apart_point(A,L) | left_apart_point(A,reverse_line(L)) ) & ~ ( left_apart_point(B,L) | left_apart_point(B,reverse_line(L)) ) & ~ unequally_directed_lines(L,line_connecting(A,B)) ) ) )). fof(bet_def,axiom,( ! [L,A,B,C] : ( between_on_line(L,A,B,C) <=> ( ( before_on_line(L,A,B) & before_on_line(L,B,C) ) | ( before_on_line(L,C,B) & before_on_line(L,B,A) ) ) ) )). %----General axioms for the basic concepts fof(oag1,axiom,( ! [A] : ~ distinct_points(A,A) )). fof(oag2,axiom,( ! [A,B,C] : ( distinct_points(A,B) => ( distinct_points(A,C) | distinct_points(B,C) ) ) )). fof(oag3,axiom,( ! [L] : ~ distinct_lines(L,L) )). fof(oag4,axiom,( ! [L,M,N] : ( distinct_lines(L,M) => ( distinct_lines(L,N) | distinct_lines(M,N) ) ) )). fof(oag5,axiom,( ! [L] : ~ unequally_directed_lines(L,L) )). fof(oag6,axiom,( ! [L,M,N] : ( unequally_directed_lines(L,M) => ( unequally_directed_lines(L,N) | unequally_directed_lines(M,N) ) ) )). fof(oag7,axiom,( ! [L,M,N] : ( ( unequally_directed_lines(L,M) & unequally_directed_lines(L,reverse_line(M)) ) => ( ( unequally_directed_lines(L,N) & unequally_directed_lines(L,reverse_line(N)) ) | ( unequally_directed_lines(M,N) & unequally_directed_lines(M,reverse_line(N)) ) ) ) )). fof(oag8,axiom,( ! [L,M] : ( ( line(L) & line(M) ) => ( unequally_directed_lines(L,M) | unequally_directed_lines(L,reverse_line(M)) ) ) )). fof(oag9,axiom,( ! [L,M] : ( ( unequally_directed_lines(L,M) & unequally_directed_lines(L,reverse_line(M)) ) => ( left_convergent_lines(L,M) | left_convergent_lines(L,reverse_line(M)) ) ) )). fof(oag10,axiom,( ! [A,L] : ~ ( left_apart_point(A,L) | left_apart_point(A,reverse_line(L)) ) )). fof(oag11,axiom,( ! [L,M] : ~ ( left_convergent_lines(L,M) | left_convergent_lines(L,reverse_line(M)) ) )). %----Constructed objects fof(oagco1,axiom,( ! [A,B] : ( ( point(A) & point(B) & distinct_points(A,B) ) => line(line_connecting(A,B)) ) )). fof(oagco2,axiom,( ! [L,M] : ( ( line(L) & line(M) & unequally_directed_lines(L,M) & unequally_directed_lines(L,reverse_line(M)) ) => point(intersection_point(L,M)) ) )). fof(oagco3,axiom,( ! [L,A] : ( ( point(A) & line(L) ) => line(parallel_through_point(L,A)) ) )). fof(oagco4,axiom,( ! [L] : ( line(L) => line(reverse_line(L)) ) )). fof(oagco5,axiom,( ! [A,B] : ( distinct_points(A,B) => ( ~ apart_point_and_line(A,line_connecting(A,B)) & ~ apart_point_and_line(B,line_connecting(A,B)) ) ) )). fof(oagco6,axiom,( ! [L,M] : ( ( unequally_directed_lines(L,M) & unequally_directed_lines(L,reverse_line(M)) ) => ( ~ apart_point_and_line(intersection_point(L,M),L) & ~ apart_point_and_line(intersection_point(L,M),M) ) ) )). fof(oagco7,axiom,( ! [A,L] : ~ apart_point_and_line(A,parallel_through_point(L,A)) )). fof(oagco8,axiom,( ! [L] : ~ distinct_lines(L,reverse_line(L)) )). fof(oagco9,axiom,( ! [A,B] : ~ unequally_directed_lines(line_connecting(A,B),reverse_line(line_connecting(B,A))) )). fof(oagco10,axiom,( ! [A,L] : ~ unequally_directed_lines(parallel_through_point(L,A),L) )). %----Uniqueness axioms for the constructions fof(oaguc1,axiom,( ! [A,B,L,M] : ( ( distinct_points(A,B) & distinct_lines(L,M) ) => ( left_apart_point(A,L) | left_apart_point(B,L) | left_apart_point(A,M) | left_apart_point(B,M) | left_apart_point(A,reverse_line(L)) | left_apart_point(B,reverse_line(L)) | left_apart_point(A,reverse_line(M)) | left_apart_point(B,reverse_line(M)) ) ) )). fof(oaguc2,axiom,( ! [A,B,L] : ( ( distinct_points(A,B) & left_apart_point(A,L) ) => ( left_apart_point(B,L) | left_convergent_lines(line_connecting(A,B),L) ) ) )). %----Substitution axioms fof(oagsub1,axiom,( ! [A,B,L] : ( left_apart_point(A,L) => ( distinct_points(A,B) | left_apart_point(B,L) ) ) )). fof(oagsub2,axiom,( ! [A,L,M] : ( ( left_apart_point(A,L) & unequally_directed_lines(L,M) ) => ( distinct_lines(L,M) | left_apart_point(A,reverse_line(M)) ) ) )). fof(oagsub3,axiom,( ! [L,M,N] : ( left_convergent_lines(L,M) => ( unequally_directed_lines(M,N) | left_convergent_lines(L,N) ) ) )). %------------------------------------------------------------------------------