
Module: ppl/ppl Branch: floating_point Commit: 18fcb47fba6d6754d0c963c5235851acf817896a URL: http://www.cs.unipr.it/git/gitweb.cgi?p=ppl/ppl.git;a=commit;h=18fcb47fba6d6...
Author: Fabio Biselli fabio.biselli@studenti.unipr.it Date: Tue Sep 8 20:30:46 2009 +0200
Added Linear_Form into doxyconf file Fixed few typos in Linear_Form Minor Documentations updates
---
doc/devref.doxyconf-html.in | 5 +++ src/Linear_Form.defs.hh | 42 ++++++++++++++-------------- src/Sum_Floating_Point_Expression.defs.hh | 18 +++++++----- 3 files changed, 37 insertions(+), 28 deletions(-)
diff --git a/doc/devref.doxyconf-html.in b/doc/devref.doxyconf-html.in index 23938aa..7ecb038 100644 --- a/doc/devref.doxyconf-html.in +++ b/doc/devref.doxyconf-html.in @@ -338,6 +338,11 @@ INPUT = @srcdir@/definitions.dox \ @srcdir@/../src/Variable_Floating_Point_Expression.types.hh \ @srcdir@/../src/Variable_Floating_Point_Expression.defs.hh \ @srcdir@/../src/Variable_Floating_Point_Expression.inlines.hh \ + @srcdir@/../src/Linear_Form.types.hh \ + @srcdir@/../src/Linear_Form.defs.hh \ + @srcdir@/../src/Linear_Form.inlines.hh \ + @srcdir@/../src/Linear_Form.templates.hh \ + @srcdir@/../src/Linear_Form.cc \ @srcdir@/gpl.dox \ @srcdir@/fdl.dox INPUT_ENCODING = UTF-8 diff --git a/src/Linear_Form.defs.hh b/src/Linear_Form.defs.hh index e66fe2d..cf90398 100644 --- a/src/Linear_Form.defs.hh +++ b/src/Linear_Form.defs.hh @@ -31,97 +31,97 @@ site: http://www.cs.unipr.it/ppl/ . */ namespace Parma_Polyhedra_Library { // Put them in the namespace here to declare them friend later.
-//! Returns the linear form \p e1 + \p e2. +//! Returns the linear form \p f1 + \p f2. /*! \relates Linear_Form */ template <typename C> Linear_Form<C> operator+(const Linear_Form<C>& f1, const Linear_Form<C>& f2);
-//! Returns the linear form \p v + \p e. +//! Returns the linear form \p v + \p f. /*! \relates Linear_Form */ template <typename C> Linear_Form<C> operator+(Variable v, const Linear_Form<C>& f);
-//! Returns the linear form \p e + \p v. +//! Returns the linear form \p f + \p v. /*! \relates Linear_Form */ template <typename C> Linear_Form<C> operator+(const Linear_Form<C>& f, Variable v);
-//! Returns the linear form \p n + \p e. +//! Returns the linear form \p n + \p f. /*! \relates Linear_Form */ template <typename C> Linear_Form<C> operator+(const C& n, const Linear_Form<C>& f);
-//! Returns the linear form \p e + \p n. +//! Returns the linear form \p f + \p n. /*! \relates Linear_Form */ template <typename C> Linear_Form<C> operator+(const Linear_Form<C>& f, const C& n);
-//! Returns the linear form \p e. +//! Returns the linear form \p f. /*! \relates Linear_Form */ template <typename C> Linear_Form<C> operator+(const Linear_Form<C>& f);
-//! Returns the linear form - \p e. +//! Returns the linear form - \p f. /*! \relates Linear_Form */ template <typename C> Linear_Form<C> operator-(const Linear_Form<C>& f);
-//! Returns the linear form \p e1 - \p e2. +//! Returns the linear form \p f1 - \p f2. /*! \relates Linear_Form */ template <typename C> Linear_Form<C> operator-(const Linear_Form<C>& f1, const Linear_Form<C>& f2);
-//! Returns the linear form \p v - \p e. +//! Returns the linear form \p v - \p f. /*! \relates Linear_Form */ template <typename C> Linear_Form<C> operator-(Variable v, const Linear_Form<C>& f);
-//! Returns the linear form \p e - \p v. +//! Returns the linear form \p f - \p v. /*! \relates Linear_Form */ template <typename C> Linear_Form<C> operator-(const Linear_Form<C>& f, Variable v);
-//! Returns the linear form \p n - \p e. +//! Returns the linear form \p n - \p f. /*! \relates Linear_Form */ template <typename C> Linear_Form<C> operator-(const C& n, const Linear_Form<C>& f);
-//! Returns the linear form \p e - \p n. +//! Returns the linear form \p f - \p n. /*! \relates Linear_Form */ template <typename C> Linear_Form<C> operator-(const Linear_Form<C>& f, const C& n);
-//! Returns the linear form \p n * \p e. +//! Returns the linear form \p n * \p f. /*! \relates Linear_Form */ template <typename C> Linear_Form<C> operator*(const C& n, const Linear_Form<C>& f);
-//! Returns the linear form \p e * \p n. +//! Returns the linear form \p f * \p n. /*! \relates Linear_Form */ template <typename C> Linear_Form<C> operator*(const Linear_Form<C>& f, const C& n);
-//! Returns the linear form \p e1 + \p e2 and assigns it to \p e1. +//! Returns the linear form \p f1 + \p f2 and assigns it to \p e1. /*! \relates Linear_Form */ template <typename C> Linear_Form<C>& operator+=(Linear_Form<C>& f1, const Linear_Form<C>& f2);
-//! Returns the linear form \p e + \p v and assigns it to \p e. +//! Returns the linear form \p f + \p v and assigns it to \p f. /*! \relates Linear_Form \exception std::length_error Thrown if the space dimension of \p v exceeds @@ -131,19 +131,19 @@ template <typename C> Linear_Form<C>& operator+=(Linear_Form<C>& f, Variable v);
-//! Returns the linear form \p e + \p n and assigns it to \p e. +//! Returns the linear form \p f + \p n and assigns it to \p f. /*! \relates Linear_Form */ template <typename C> Linear_Form<C>& operator+=(Linear_Form<C>& f, const C& n);
-//! Returns the linear form \p e1 - \p e2 and assigns it to \p e1. +//! Returns the linear form \p f1 - \p f2 and assigns it to \p f1. /*! \relates Linear_Form */ template <typename C> Linear_Form<C>& operator-=(Linear_Form<C>& f1, const Linear_Form<C>& f2);
-//! Returns the linear form \p e - \p v and assigns it to \p e. +//! Returns the linear form \p f - \p v and assigns it to \p f. /*! \relates Linear_Form \exception std::length_error Thrown if the space dimension of \p v exceeds @@ -153,13 +153,13 @@ template <typename C> Linear_Form<C>& operator-=(Linear_Form<C>& f, Variable v);
-//! Returns the linear form \p e - \p n and assigns it to \p e. +//! Returns the linear form \p f - \p n and assigns it to \p f. /*! \relates Linear_Form */ template <typename C> Linear_Form<C>& operator-=(Linear_Form<C>& f, const C& n);
-//! Returns the linear form \p n * \p e and assigns it to \p e. +//! Returns the linear form \p n * \p f and assigns it to \p f. /*! \relates Linear_Form */ template <typename C> Linear_Form<C>& diff --git a/src/Sum_Floating_Point_Expression.defs.hh b/src/Sum_Floating_Point_Expression.defs.hh index dab7cb9..ed58cfa 100644 --- a/src/Sum_Floating_Point_Expression.defs.hh +++ b/src/Sum_Floating_Point_Expression.defs.hh @@ -57,18 +57,22 @@ namespace Parma_Polyhedra_Library {
\par Linearizations of floating-point sum expressions
- Let \f$i + \sum_{v \in V}i_{v}v \f$ be a linear form we define an abstract - operator \f$\aslf\f$: + Let \f$i + \sum_{v \in \cV}i_{v}v \f$ and + \f$i' + \sum_{v \in \cV}i'_{v}v \f$ + be two linear forms and \f$\aslf\f$ a sound abstract operator on linear + form such that: \f[ - \begin{left} - \left(i + \sum_{v \in V}i_{v}v\right) + \left(i + \sum_{v \in \cV}i_{v}v\right) \aslf - \left(i' + \sum_{v \in V}i'_{v}v\right) + \left(i' + \sum_{v \in \cV}i'_{v}v\right) = \left(i \asifp i'\right) + - \sum_{v \in V}\left(i_{v} \asifp i'_{v}\right)v - \end{left} + \sum_{v \in \cV}\left(i_{v} \asifp i'_{v}\right)v \f] + Given an expression \f$\textrm{expr}_{\mathbf{f}}\f$ and an interval + abstract store \f$\rho^{#}\f$, we construct the interval linear form + \f$\left(\textrm{expr}_{\mathbf{f}}\right)\rho^{#}\f$ on \f$\cV\f$ as + follow: */ template <typename FP_Interval_Type, typename FP_Format> class Sum_Floating_Point_Expression