%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% $Id: DecomposableClass.tex,v 1.1.1.2 2004/10/04 17:25:13 nthiery Exp $
% File:		lib/DOMAINS/CATEGORY/DOC/DecomposableClass.tex
% Authors:	Nicolas M. Thiéry <nthiery@users.sourceforge.net>
% Purpose:	Documentation for the category Cat::DecomposableClass
% Created:	Wed Sep  3 14:54:24 2003
% License:	LGPL
% Project:	MuPAD-Combinat, http://mupad-combinat.sf.net
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\begin{Mhelppage}{DecomposableClass}{Nicolas M. Thiéry}
  [ImplState=stable,TestState=stable,DocState=stable]
\Mproofread{nthiery}{28/09/2004}{reasonably complete, but not proofread}

\begin{MInfo}
  \eng{the category of decomposable combinatorial classes}
  \de{}
\end{MInfo}

\begin{MIntro}
  \eng{\Mthis{} represents the category of decomposable combinatorial
    classes.}
  \de{}
\end{MIntro}

\begin{MCatConst}
  \MCall{}
\end{MCatConst}

\begin{MCategories}
  \Mup{Cat::GradedCombinatorialClass}
\end{MCategories}

\begin{MDetails}
  \eng{A \Mthis{} is a graded combinatorial class which is
    decomposable; that is it can be defined using a recursive
    specification (or grammar) than can be fed to
    \Mup{combinat::decomposableObjects}.}
  
  \eng{The purpose of this category is mostly technical: it makes it
    easy for a decomposable combinatorial class to use the machinery
    of \Mup{combinat::decomposableObjects}, without having to inherit
    from this domain. Indeed, such a class may typically want to
    inherit from another domain to specify the data structure of its
    elements.}
\end{MDetails}

\begin{MDomBasEntries}
  \MDomEntry{specification}
  \eng{The specification to be fed to \Mup{combinat::decomposableObjects}.}
\end{MDomBasEntries}

\begin{MMethodDetails}{fromGrammar}
  \infoEng{raw object}
  \infoDe{}
  \call{\Mtype{raw object} x}
  
  \eng{Constructs an element of this combinatorial class from its
    raw representation given by the recursive specification.}
  
  \eng{This is set by default to \Mex{id}, assuming that the
    specification readily describes the objects of this class, without
    further transformation required. This often can be achieved using
    the \Mex{Alias} feature of \Mup{combinat::decomposableObjects}.}
\end{MMethodDetails}

\begin{MChanges}
  \version{3.1}
  \eng[New category]{\Mthis{} is a new category} %
\end{MChanges}

\end{Mhelppage}
