% file: Alcataenia

% Alcataenia species 
%   dataset is described in 
%	"Congruent and synchronic patterns in biogeography and 
%	 speciation among seabirds, pinnipeds, ans cestodes,"
%        (J.Parasitology, 78:4:601-615, 1992) 
%   by Eric P. Hoberg . 

% 9 species 

const k=8.

leaf(0..k).

% A. Larina

 f(0,0,1).
 f(0,1,1).
 f(0,2,0).
 f(0,3,0).
 f(0,4,0).
 f(0,5,0).
 f(0,6,0).
 f(0,7,0).
 f(0,8,0).
 f(0,9,0).
 f(0,10,0).
 f(0,11,0).
 f(0,12,0).
 f(0,13,0).
 f(0,14,0).

% A. Campylacantha

 f(1,0,1).
 f(1,1,1).
 f(1,2,0).
 f(1,3,1).
 f(1,4,2).
 f(1,5,0).
 f(1,6,1).
 f(1,7,0).
 f(1,8,1).
 f(1,9,1).
 f(1,10,0).
 f(1,11,0).
 f(1,12,1).
 f(1,13,0).
 f(1,14,0).

% A. Armillaris

 f(2,0,1).
 f(2,1,1).
 f(2,2,1).
 f(2,3,1).
 f(2,4,1).
 f(2,5,1).
 f(2,6,0).
 f(2,7,0).
 f(2,8,1).
 f(2,9,1).
 f(2,10,1).
 f(2,11,1).
 f(2,12,0).
 f(2,13,0).
 f(2,14,0).

% A. Meinertzhageni

 f(3,0,1).
 f(3,1,1).
 f(3,2,0).
 f(3,3,1).
 f(3,4,2).
 f(3,5,1).
 f(3,6,1).
 f(3,7,0).
 f(3,8,2).
 f(3,9,1).
 f(3,10,0).
 f(3,11,0).
 f(3,12,1).
 f(3,13,1).
 f(3,14,1).

% A. Longicervica

 f(4,0,1).
 f(4,1,1).
 f(4,2,1).
 f(4,3,1).
 f(4,4,1).
 f(4,5,1).
 f(4,6,0).
 f(4,7,0).
 f(4,8,1).
 f(4,9,1).
 f(4,10,2).
 f(4,11,0).
 f(4,12,1).
 f(4,13,1).
 f(4,14,1).

% A. Pygmaeus

 f(5,0,2).
 f(5,1,1).
 f(5,2,1).
 f(5,3,1).
 f(5,4,1).
 f(5,5,1).
 f(5,6,1).
 f(5,7,1).
 f(5,8,0).
 f(5,9,0).
 f(5,10,0).
 f(5,11,0).
 f(5,12,0).
 f(5,13,0).
 f(5,14,0).

% A. Fraterculae

 f(6,0,1).
 f(6,1,1).
 f(6,2,1).
 f(6,3,0).
 f(6,4,0).
 f(6,5,0).
 f(6,6,0).
 f(6,7,0).
 f(6,8,0).
 f(6,9,0).
 f(6,10,0).
 f(6,11,0).
 f(6,12,0).
 f(6,13,0).
 f(6,14,0).

% A. Cerorhincae

 f(7,0,1).
 f(7,1,1).
 f(7,2,1).
 f(7,3,1).
 f(7,4,0).
 f(7,5,0).
 f(7,6,0).
 f(7,7,0).
 f(7,8,0).
 f(7,9,0).
 f(7,10,0).
 f(7,11,0).
 f(7,12,0).
 f(7,13,0).
 f(7,14,0).

% A. Atlantiensis

 f(8,0,1).
 f(8,1,1).
 f(8,2,1).
 f(8,3,1).
 f(8,4,0).
 f(8,5,0).
 f(8,6,0).
 f(8,7,0).
 f(8,8,0).
 f(8,9,0).
 f(8,10,0).
 f(8,11,0).
 f(8,12,0).
 f(8,13,0).
 f(8,14,1).

% characters and states

character(I) :- f(X,I,S).
state(S) :- f(X,I,S).

% informative characters 

informative_character(14). informative_character(2). 
informative_character(3). informative_character(4). 
informative_character(5). informative_character(6). 
informative_character(8). informative_character(9). 
informative_character(12). informative_character(13). 

% essential states

essential_state(14,1). essential_state(13,1). essential_state(12,1).  
essential_state(9,1). essential_state(8,1). essential_state(6,1).  
essential_state(5,1). essential_state(4,1). essential_state(3,1).  
essential_state(2,1). essential_state(1,1). essential_state(0,1).  
essential_state(14,0). essential_state(13,0). essential_state(12,0).  
essential_state(11,0). essential_state(10,0). essential_state(9,0).  
essential_state(8,0). essential_state(7,0). essential_state(6,0).  
essential_state(5,0). essential_state(4,0). essential_state(3,0).  
essential_state(2,0). essential_state(4,2).

% domain specific info: 
:- not edge(16,0).

% redundant constraints
:- not edge(16,15).
:- not edge(15,14).

%sister(X,Y) :-  edge(Z,X), edge(Z,Y), internal(Z), vertex(X;Y), X<Y.
%:- not sister(2,4). 



