version 3.5c

CONSENSE -- Consensus tree program
(c) Copyright  1986-1993  by  Joseph  Felsenstein  and  by  the  University  of
Washington.  Written by Joseph Felsenstein.  Permission is granted to copy this
document provided that no fee is charged for it and that this copyright  notice
is not removed.

     CONSENSE reads a file of computer-readable trees and prints out  (and  may
also  write  out onto a file) a consensus tree.  At the moment it carries out a
family of consensus tree methods called the Ml (M-sub-L) methods  (Margush  and
McMorris,  1981).   These include strict consensus and majority rule consensus.
Basically the consensus tree consists of  monophyletic  groups  that  occur  as
often  as  possible in the data.  If a group occurs in more than 50% of all the
input trees it will definitely appear in the consensus tree.

     The tree printed out has at each fork a number indicating how  many  times
the  group  which  consists of the species to the right of (descended from) the
fork occurred.  Thus if we read in 15 trees and find that a fork has the number
15,  that  group  occurred  in  all  of  the  trees.  The strict consensus tree
consists of all groups that  occurred  100%  of  the  time,  the  rest  of  the
resolution  being  ignored.   The tree printed out here includes groups down to
50%, and below it until the tree is fully resolved.

     The majority rule consensus tree consists of all groups  that  occur  more
than 50% of the time.  Any other percentage level between 50% and 100% can also
be used, and that is why the program in effect carries out a family of methods.
You have to decide on the percentage level, figure out for yourself what number
of occurrences that would be  (e.g.  15  in  the  above  case  for  100%),  and
resolutely  ignore any group below that number.  Do not use numbers at or below
50%, because some groups occurring (say) 35% of the time will not be  shown  on
the  tree.  The collection of all groups that occur 35% or more of the time may
include two groups that are mutually self contradictory and  cannot  appear  in
the same tree.  In this program I have included groups that occur less than 50%
of the time, working downwards in their frequency of  occurrence,  as  long  as
they  continue  to resolve the tree and do not contradict more frequent groups.
In this respect the method is similar to the Nelson consensus  method  (Nelson,
1979) as explicated by Page (1989) although it is not identical to it.

     For the moment the program is rather crude; it cannot carry out any  other
consensus  tree  method, such as Adams consensus (Adams, 1972, 1986) or methods
based on quadruples of species (Estabrook, McMorris, and Meacham, 1985).


                          INPUT, OUTPUT, AND OPTIONS

     Input is a tree  file  (called  "infile"  rather  than  "treefile")  which
contains  a series of trees in the New Hampshire standard form -- the form used
when many of the programs in this package write  out  tree  files.   Each  tree
starts  on a new line.  Each tree can have a weight, which is a real number and
is located in comment brackets "[" and "]" just before the final ";" which ends
the  description  of the tree.  Note that this program can correctly read trees
whether or not they are bifurcating: in fact they can be multifurcating atn any
level in the tree.








     The options are selected from a menu, which looks like this:
Majority-rule and strict consensus tree program, version 3.5c
Settings for this run:
  O                        Outgroup root?  No, use as outgroup species  1
  R        Trees to be treated as Rooted?  No
  0   Terminal type (IBM PC, VT52, ANSI)?  ANSI
  1         Print out the sets of species  Yes
  2  Print indications of progress of run  Yes
  3                        Print out tree  Yes
  4       Write out trees onto tree file?  Yes

Are these settings correct? (type Y or the letter for one to change)


     Option R (Rooted) toggles between the default assumption  that  the  input
trees  are  unrooted trees and the selection that specifies that the tree is to
be treated as a rooted tree and not re-rooted.   Otherwise  the  tree  will  be
treated  as  outgroup-rooted  and  will be re-rooted automatically at the first
species encountered on the first tree  (or  at  a  species  designated  by  the
Outgroup option).

     Option O is the usual Outgroup rooting option.  It is in  effect  only  if
the Rooted option selection is not in effect.  The trees will be re-rooted with
a species of your choosing.  You will be asked for the number  of  the  species
that  is  to be the outgroup.  If we want to outgroup-root the tree on the line
leading to a species which appears as  the  third  species  (counting  left-to-
right)  in  the first computer-readable tree in the input file, we would invoke
select menu option O and specify species 3.

     Output is a list of the species, a list of the subsets that appear in  the
consensus  tree,  a  list  of  those  that  appeared  in  one or another of the
individual trees but did not occur frequently enough to get into the  consensus
tree,  followed  by a diagram showing the consensus tree.  The lists of subsets
consists of a row of symbols, each either "." or "*".  The species that are  in
the  set  are  marked  by "*".  Every ten species there is a blank, to help you
keep track of the alignment of columns.  The order of  symbols  corresponds  to
the  order  of  species  in the species list.  Thus a set that consisted of the
second, seventh, and eighth out of 13 species would be represented by:

          .*....**.. ...

Note that if the trees are  unrooted  the  final  tree  will  have  one  group,
consisting  of every species except the Outgroup (which by default is the first
species encountered on the first tree), which always appears.  It will  not  be
listed  in  either of the lists of sets, but it will be shown in the final tree
as occurring all of the time.   This  is  hardly  surprising:  in  telling  the
program  that  this  species  is  the  outgroup  we have specified that the set
consisting of all of the others is always a monophyletic set.  So this  is  not
to be taken as interesting information, despite its dramatic appearance.

     Option 2 in the menu gives you the option of turning off  the  writing  of
these sets into the output file.

     Option 3 is the usual tree file option.  If this is on (it is by  default)
then  the  final  tree  will  be  written  out onto a file in computer-readable
format.  The number of times that each group appeared in the input  trees  will
be  written  after  each  group.   This number is the sum of the weights of the
trees in which it appeared, so that if there are 11 trees, ten of  them  having
weight  0.1 and one weight 1.0, a group that appeared in the last tree and in 6
others would be shown as appearing 1.6 times.




                                   CONSTANTS

     The constants available to be changed in the  program  include  the  usual
initial  settings  for  the  terminal type ("ansi0", "vt520", and "ibmpc0") and
"nmlngth", the length of a species name.

     The program uses the consensus tree algorithm originally designed for  the
bootstrap  programs.   It  is  quite fast, and execution time is unlikely to be
limiting for you (assembling the input file will be much  more  of  a  limiting
step).   In  the  future,  if  possible,  more  consensus  tree methods will be
incorporated (although  the  current  methods  are  the  ones  needed  for  the
component analysis of bootstrap estimates of phylogenies, and in other respects
I also think that the present ones are probably among the best).


--------------------- TEST DATA SET ----------------------------------

(A,(B,(H,(D,(J,(((G,E),(F,I)),C))))));
(A,(B,(D,((J,H),(((G,E),(F,I)),C)))));
(A,(B,(D,(H,(J,(((G,E),(F,I)),C))))));
(A,(B,(E,(G,((F,I),((J,(H,D)),C))))));
(A,(B,(E,(G,((F,I),(((J,H),D),C))))));
(A,(B,(E,((F,I),(G,((J,(H,D)),C))))));
(A,(B,(E,((F,I),(G,(((J,H),D),C))))));
(A,(B,(E,((G,(F,I)),((J,(H,D)),C)))));
(A,(B,(E,((G,(F,I)),(((J,H),D),C)))));

--------------------- TEST SET OUTPUT --------------------------------

Majority-rule and strict consensus tree program, version 3.5c

Species in order:

  A
  B
  H
  D
  J
  G
  E
  F
  I
  C


Sets included in the consensus tree

Set (species in order)     How many times out of   9.00



Sets NOT included in consensus tree:

Set (species in order)     How many times out of   9.00



CONSENSUS TREE:
the numbers at the forks indicate the number
of times the group consisting of the species
which are to the right of that fork occurred



among the trees, out of   9.00 trees

  +---------------------------------------A
  !
  !         +-----------------------------E
  !         !
  !         !                        +----I
  !         !         +------------9.0
  !         !         !              +----F
  !    +--9.0         !
  !    !    !    +--2.0         +---------D
  !    !    !    !    !    +--6.0
  !    !    !    !    !    !    !    +----J
  !    !    !    !    +--6.0    +--4.0
  +--9.0    +--6.0         !         +----H
  .     !         !         !
  .     !         !         +--------------C
  .     !         !
  .     !         +------------------------G
  .     !
  .     +----------------------------------B


  remember: this is an unrooted tree!