Index: lemon/max_matching.h
===================================================================
--- lemon/max_matching.h	(revision 339)
+++ lemon/max_matching.h	(revision 342)
@@ -40,9 +40,9 @@
   /// \brief Edmonds' alternating forest maximum matching algorithm.
   ///
-  /// This class provides Edmonds' alternating forest matching
-  /// algorithm. The starting matching (if any) can be passed to the
-  /// algorithm using some of init functions.
+  /// This class implements Edmonds' alternating forest matching
+  /// algorithm. The algorithm can be started from an arbitrary initial
+  /// matching (the default is the empty one)
   ///
-  /// The dual side of a matching is a map of the nodes to
+  /// The dual solution of the problem is a map of the nodes to
   /// MaxMatching::Status, having values \c EVEN/D, \c ODD/A and \c
   /// MATCHED/C showing the Gallai-Edmonds decomposition of the
@@ -50,7 +50,7 @@
   /// factor-critical components, the nodes in \c ODD/A form the
   /// barrier, and the nodes in \c MATCHED/C induce a graph having a
-  /// perfect matching. The number of the fractor critical components
+  /// perfect matching. The number of the factor-critical components
   /// minus the number of barrier nodes is a lower bound on the
-  /// unmatched nodes, and if the matching is optimal this bound is
+  /// unmatched nodes, and the matching is optimal if and only if this bound is
   /// tight. This decomposition can be attained by calling \c
   /// decomposition() after running the algorithm.
@@ -67,6 +67,5 @@
     ///\brief Indicates the Gallai-Edmonds decomposition of the graph.
     ///
-    ///Indicates the Gallai-Edmonds decomposition of the graph, which
-    ///shows an upper bound on the size of a maximum matching. The
+    ///Indicates the Gallai-Edmonds decomposition of the graph. The
     ///nodes with Status \c EVEN/D induce a graph with factor-critical
     ///components, the nodes in \c ODD/A form the canonical barrier,
@@ -411,11 +410,11 @@
 
     /// \name Execution control
-    /// The simplest way to execute the algorithm is to use the member
+    /// The simplest way to execute the algorithm is to use the
     /// \c run() member function.
     /// \n
 
-    /// If you need more control on the execution, first you must call
+    /// If you need better control on the execution, you must call
     /// \ref init(), \ref greedyInit() or \ref matchingInit()
-    /// functions, then you can start the algorithm with the \ref
+    /// functions first, then you can start the algorithm with the \ref
     /// startParse() or startDense() functions.
 
@@ -434,7 +433,7 @@
     }
 
-    ///\brief Finds a greedy matching for initial matching.
-    ///
-    ///For initial matchig it finds a maximal greedy matching.
+    ///\brief Finds an initial matching in a greedy way
+    ///
+    ///It finds an initial matching in a greedy way.
     void greedyInit() {
       createStructures();
@@ -460,5 +459,5 @@
 
 
-    /// \brief Initialize the matching from the map containing a matching.
+    /// \brief Initialize the matching from a map containing.
     ///
     /// Initialize the matching from a \c bool valued \c Edge map. This
@@ -508,5 +507,5 @@
     ///
     /// It runs Edmonds' algorithm with a heuristic of postponing
-    /// shrinks, giving a faster algorithm for dense graphs.
+    /// shrinks, therefore resulting in a faster algorithm for dense graphs.
     void startDense() {
       for(NodeIt n(_graph); n != INVALID; ++n) {
@@ -539,11 +538,11 @@
 
     /// \name Primal solution
-    /// Functions for get the primal solution, ie. the matching.
+    /// Functions to get the primal solution, ie. the matching.
 
     /// @{
 
-    ///\brief Returns the size of the actual matching stored.
-    ///
-    ///Returns the size of the actual matching stored. After \ref
+    ///\brief Returns the size of the current matching.
+    ///
+    ///Returns the size of the current matching. After \ref
     ///run() it returns the size of the maximum matching in the graph.
     int matchingSize() const {
@@ -584,5 +583,5 @@
 
     /// \name Dual solution
-    /// Functions for get the dual solution, ie. the decomposition.
+    /// Functions to get the dual solution, ie. the decomposition.
 
     /// @{
@@ -646,5 +645,5 @@
   /// solution can be get with \c nodeValue(), \c blossomNum() and \c
   /// blossomValue() members and \ref MaxWeightedMatching::BlossomIt
-  /// "BlossomIt" nested class which is able to iterate on the nodes
+  /// "BlossomIt" nested class, which is able to iterate on the nodes
   /// of a blossom. If the value type is integral then the dual
   /// solution is multiplied by \ref MaxWeightedMatching::dualScale "4".
@@ -1631,5 +1630,5 @@
 
     /// \name Execution control
-    /// The simplest way to execute the algorithm is to use the member
+    /// The simplest way to execute the algorithm is to use the
     /// \c run() member function.
 
@@ -1792,11 +1791,11 @@
 
     /// \name Primal solution
-    /// Functions for get the primal solution, ie. the matching.
+    /// Functions to get the primal solution, ie. the matching.
 
     /// @{
 
-    /// \brief Returns the matching value.
-    ///
-    /// Returns the matching value.
+    /// \brief Returns the weight of the matching.
+    ///
+    /// Returns the weight of the matching.
     Value matchingValue() const {
       Value sum = 0;
@@ -1849,5 +1848,5 @@
 
     /// \name Dual solution
-    /// Functions for get the dual solution.
+    /// Functions to get the dual solution.
 
     /// @{
@@ -1899,8 +1898,8 @@
     }
 
-    /// \brief Lemon iterator for get the items of the blossom.
-    ///
-    /// Lemon iterator for get the nodes of the blossom. This class
-    /// provides a common style lemon iterator which gives back a
+    /// \brief Iterator for obtaining the nodes of the blossom.
+    ///
+    /// Iterator for obtaining the nodes of the blossom. This class
+    /// provides a common lemon style iterator for listing a
     /// subset of the nodes.
     class BlossomIt {
@@ -1909,5 +1908,5 @@
       /// \brief Constructor.
       ///
-      /// Constructor for get the nodes of the variable.
+      /// Constructor to get the nodes of the variable.
       BlossomIt(const MaxWeightedMatching& algorithm, int variable)
         : _algorithm(&algorithm)
@@ -2818,5 +2817,5 @@
 
     /// \name Execution control
-    /// The simplest way to execute the algorithm is to use the member
+    /// The simplest way to execute the algorithm is to use the
     /// \c run() member function.
 
@@ -2956,5 +2955,5 @@
 
     /// \name Primal solution
-    /// Functions for get the primal solution, ie. the matching.
+    /// Functions to get the primal solution, ie. the matching.
 
     /// @{
@@ -2997,5 +2996,5 @@
 
     /// \name Dual solution
-    /// Functions for get the dual solution.
+    /// Functions to get the dual solution.
 
     /// @{
@@ -3047,8 +3046,8 @@
     }
 
-    /// \brief Lemon iterator for get the items of the blossom.
-    ///
-    /// Lemon iterator for get the nodes of the blossom. This class
-    /// provides a common style lemon iterator which gives back a
+    /// \brief Iterator for obtaining the nodes of the blossom.
+    ///
+    /// Iterator for obtaining the nodes of the blossom. This class
+    /// provides a common lemon style iterator for listing a
     /// subset of the nodes.
     class BlossomIt {
@@ -3057,5 +3056,5 @@
       /// \brief Constructor.
       ///
-      /// Constructor for get the nodes of the variable.
+      /// Constructor to get the nodes of the variable.
       BlossomIt(const MaxWeightedPerfectMatching& algorithm, int variable)
         : _algorithm(&algorithm)
