diff --git a/books/bookvol10.1.pamphlet b/books/bookvol10.1.pamphlet
index 68ebfd2..ee89e7a 100644
--- a/books/bookvol10.1.pamphlet
+++ b/books/bookvol10.1.pamphlet
@@ -8552,8 +8552,20 @@ Groebner Basis
 Greatest Common Divisor
 \chapter{Polynomial Factorization}
 Polynomial Factorization
+
 \chapter{Cylindrical Algebraic Decomposition}
-Cylindrical Algebraic Decomposition
+We quote from LaValle \cite{LaVa06}.
+The idea is to develop a sequence of projections that drops the dimension
+of the semi-algebraic set by one each time. Initially, the set is defined
+over ${\bf R}^n$, and after one projection, a semi-algebraic set is obtained
+in ${\bf R}^{n-1}$. Eventually, the projection reaches ${\bf R}$, and a
+univariate polynomial is obtained for which the zeros are at the critical
+places where cell boundaries need to be formed. A cell decomposition of
+1-cells (intervals) and 0-cells is formed by partitioning ${\bf R}$. 
+The sequences is then reversed, and decompositions are formed from ${\bf R}^2$
+up to ${\bf R}^n$. Each iteration starts with a cell decomposition in
+${\bf R}^i$ and lifts it to obtain a cylinder of cells in ${\bf R}^{i+1}$.
+
 \chapter{Pade approximant}
 Pade approximant
 \chapter{Schwartz-Zippel lemma and testing polynomial identities}
diff --git a/books/bookvol10.2.pamphlet b/books/bookvol10.2.pamphlet
index b5a1789..1a62084 100644
--- a/books/bookvol10.2.pamphlet
+++ b/books/bookvol10.2.pamphlet
@@ -35164,6 +35164,42 @@ Ring examples
 The category of rings with unity, always associative, but not 
 necessarily commutative.
 
+Rings have two operations, '+' and '*' and satisfy 5 axioms:
+
+1) (associative addition)        a + (b + c) = (a + b) + c 
+2) (commutative addition)        a + b = b + a 
+3) (associative multiplication)  a(bc) = (ab)c 
+4) (distributive mulitplication) a(b + c) = ab + ac; (b + c)a = ba + ca
+5) (equation solution)           a + x = b has a solution in R
+
+examples include
+  
+ - even integers
+ - integers
+ - integers module any positive integer
+ - rational numbers
+ - real numbers
+ - complex numbers
+ - real quaterions
+ - a + b*sqrt(2) where a and b are rational
+ - polynomials in real variables with real coefficients
+ - real continuous functions in a fixed interval
+ - all power series in a real variable convergent on an interval
+ - all subsets of an arbitrary set
+ - all square matrices with elements from a ring
+
+Rings are not necessarily commutative. For example, square 2x2 matices:
+
+  +-   -+ +-   -+   +-   -+
+  | 0 1 | | 0 0 | = | 1 0 |
+  | 0 0 | | 1 0 |   | 0 0 |
+  +-   -+ +-   -+   +-   -+
+
+  +-   -+ +-   -+   +-   -+
+  | 0 0 | | 0 1 | = | 0 0 |
+  | 1 0 | | 0 0 |   | 0 1 |
+  +-   -+ +-   -+   +-   -+
+
 See Also:
 o )show Ring
 
@@ -47522,12 +47558,32 @@ IntegralDomain examples
 ====================================================================
 
 The category of commutative integral domains, i.e. commutative
-rings with no zero divisors.
+rings with no zero divisors. That means that we can show that
+if ab = 0 then either a or b must be 0.
+
+This does not have to be true. For instance, real 2x2 matrices 
+have zero divisors since
+
+     A   x   B    =    0    but neither A nor B is 0:
+  +-   -+ +-   -+   +-   -+
+  | 0 1 | | 0 2 | = | 0 0 |
+  | 0 0 | | 0 0 |   | 0 0 |
+  +-   -+ +-   -+   +-   -+
+
+
 
 Conditional attributes:
   canonicalUnitNormal - the canonical field is the same for all associates
   canonicalsClosed    - the product of two canonicals is itself canonical
 
+ Ring -> CommutativeRing -> IntegralDomain
+
+1) (associative addition)        a + (b + c) = (a + b) + c 
+2) (commutative addition)        a + b = b + a 
+3) (associative multiplication)  a(bc) = (ab)c 
+4) (distributive mulitplication) a(b + c) = ab + ac; (b + c)a = ba + ca
+5) (equation solution)           a + x = b has a solution in R
+
 See Also:
 o )show IntegralDomain
 
diff --git a/books/bookvolbib.pamphlet b/books/bookvolbib.pamphlet
index 5dc52ca..4d47901 100644
--- a/books/bookvolbib.pamphlet
+++ b/books/bookvolbib.pamphlet
@@ -14758,6 +14758,19 @@ Math. Tables Aids Comput. 10 91--96. (1956)
 
 \end{chunk}
 
+\index{LaValle, Steven M.}
+\begin{chunk}{axiom.bib}
+@book{LaVa06,
+  author = "LaValle, Steven M.",
+  title = "Planning Algorithms",
+  year = "2006",
+  publisher = "Cambridge University Press"
+}
+\index{algorithm!cylindrical algebraic decomposition}
+\index{cylindrical algebraic decomposition}
+
+\end{chunk}
+
 \eject
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 \chapter{Bibliography}
diff --git a/changelog b/changelog
index 9d93127..d26ef4a 100644
--- a/changelog
+++ b/changelog
@@ -1,3 +1,7 @@
+20141004 tpd src/axiom-website/patches.html 20141004.01.tpd.patch
+20141004 tpd books/bookvol10.2 add documentation for Ring help file
+20141004 tpd books/bookvolbib add LaValle ref for CAD
+20141004 tpd books/bookvol10.1 add documentation for CAD
 20141002 tpd src/axiom-website/patches.html 20141002.01.tpd.patch
 20141002 tpd src/interp/i-analy.lisp fix bug 7260 wrong type on output
 20140928 tpd src/axiom-website/patches.html 20140928.01.tpd.patch
diff --git a/patch b/patch
index 7adea28..10d6bd4 100644
--- a/patch
+++ b/patch
@@ -1,4 +1,3 @@
-src/interp/i-analy.lisp fix wrong type on output
-
-fix bug 7260: FINITE() Type: Subdomain(Domain)
+books/bookvol10.1, 10.2, bib add documentation
 
+add documentation to help files and general algebra (CAD)
diff --git a/src/axiom-website/patches.html b/src/axiom-website/patches.html
index 7618a60..1b5da4c 100644
--- a/src/axiom-website/patches.html
+++ b/src/axiom-website/patches.html
@@ -4660,6 +4660,8 @@ books/bookvol10.4 document Sylvester matrix<br/>
 books/bookvol0.pamphlet add contributor preamble<br/>
 <a href="patches/20141002.01.tpd.patch">20141002.01.tpd.patch</a>
 src/interp/i-analy.lisp fix wrong type on output<br/>
+<a href="patches/20141004.01.tpd.patch">20141004.01.tpd.patch</a>
+books/bookvol10.1, 10.2, bib add documentation<br/>
  </body>
 </html>
 
