Vcsn  2.3
Be Rational
vcsn::detail::log_impl Class Reference

#include <log.hh>

Collaboration diagram for vcsn::detail::log_impl:

Public Types

using self_t = log
 
using value_t = double
 

Public Member Functions

value_t rdivide (const value_t l, const value_t r) const
 
value_t ldivide (const value_t l, const value_t r) const
 
value_t star (const value_t v) const
 
value_t conv (std::istream &i, bool=true) const
 
std::ostream & print_set (std::ostream &o, format fmt={}) const
 

Static Public Member Functions

static symbol sname ()
 
static log make (std::istream &is)
 Build from the description in is. More...
 
static value_t zero ()
 The zero for the log semiring is +oo. More...
 
static value_t one ()
 The neutral element for the log semiring is 0. More...
 
static value_t add (const value_t l, const value_t r)
 
static value_t sub (const value_t l, const value_t r)
 
static value_t mul (const value_t l, const value_t r)
 
static bool equal (const value_t l, const value_t r)
 
static bool less (const value_t lhs, const value_t rhs)
 Whether lhs < rhs. More...
 
static constexpr bool is_special (const value_t)
 
static bool is_zero (const value_t v)
 
static bool is_one (const value_t v)
 
static constexpr bool is_commutative ()
 
static constexpr bool is_idempotent ()
 
static constexpr bool has_lightening_weights ()
 
static constexpr bool show_one ()
 
static constexpr star_status_t star_status ()
 
static value_t transpose (const value_t v)
 
static size_t hash (const value_t v)
 
static value_t conv (self_t, const value_t v)
 
static std::ostream & print (const value_t v, std::ostream &o=std::cout, format fmt={})
 

Detailed Description

Definition at line 22 of file log.hh.

Member Typedef Documentation

Definition at line 25 of file log.hh.

Definition at line 26 of file log.hh.

Member Function Documentation

static value_t vcsn::detail::log_impl::add ( const value_t  l,
const value_t  r 
)
inlinestatic

Definition at line 53 of file log.hh.

static value_t vcsn::detail::log_impl::conv ( self_t  ,
const value_t  v 
)
inlinestatic

Definition at line 138 of file log.hh.

References vcsn::detail::v.

value_t vcsn::detail::log_impl::conv ( std::istream &  i,
bool  = true 
) const
inline

Definition at line 144 of file log.hh.

References vcsn::eat(), vcsn::res, and zero().

Here is the call graph for this function:

static bool vcsn::detail::log_impl::equal ( const value_t  l,
const value_t  r 
)
inlinestatic

Definition at line 90 of file log.hh.

static constexpr bool vcsn::detail::log_impl::has_lightening_weights ( )
inlinestatic

Definition at line 118 of file log.hh.

static size_t vcsn::detail::log_impl::hash ( const value_t  v)
inlinestatic

Definition at line 132 of file log.hh.

References vcsn::detail::hash_value().

Here is the call graph for this function:

static constexpr bool vcsn::detail::log_impl::is_commutative ( )
inlinestatic

Definition at line 116 of file log.hh.

static constexpr bool vcsn::detail::log_impl::is_idempotent ( )
inlinestatic

Definition at line 117 of file log.hh.

static bool vcsn::detail::log_impl::is_one ( const value_t  v)
inlinestatic

Definition at line 111 of file log.hh.

References one().

Here is the call graph for this function:

static constexpr bool vcsn::detail::log_impl::is_special ( const value_t  )
inlinestatic

Definition at line 101 of file log.hh.

static bool vcsn::detail::log_impl::is_zero ( const value_t  v)
inlinestatic

Definition at line 106 of file log.hh.

References zero().

Referenced by mul(), and rdivide().

Here is the call graph for this function:

value_t vcsn::detail::log_impl::ldivide ( const value_t  l,
const value_t  r 
) const
inline

Definition at line 77 of file log.hh.

References rdivide().

Here is the call graph for this function:

static bool vcsn::detail::log_impl::less ( const value_t  lhs,
const value_t  rhs 
)
inlinestatic

Whether lhs < rhs.

Definition at line 96 of file log.hh.

static log vcsn::detail::log_impl::make ( std::istream &  is)
inlinestatic

Build from the description in is.

Definition at line 35 of file log.hh.

References vcsn::eat(), and sname().

Here is the call graph for this function:

static value_t vcsn::detail::log_impl::mul ( const value_t  l,
const value_t  r 
)
inlinestatic

Definition at line 63 of file log.hh.

References is_zero(), and zero().

Here is the call graph for this function:

static value_t vcsn::detail::log_impl::one ( )
inlinestatic

The neutral element for the log semiring is 0.

Definition at line 48 of file log.hh.

Referenced by is_one().

static std::ostream& vcsn::detail::log_impl::print ( const value_t  v,
std::ostream &  o = std::cout,
format  fmt = {} 
)
inlinestatic

Definition at line 158 of file log.hh.

std::ostream& vcsn::detail::log_impl::print_set ( std::ostream &  o,
format  fmt = {} 
) const
inline

Definition at line 168 of file log.hh.

value_t vcsn::detail::log_impl::rdivide ( const value_t  l,
const value_t  r 
) const
inline

Definition at line 70 of file log.hh.

References is_zero(), and vcsn::require().

Referenced by ldivide().

Here is the call graph for this function:

static constexpr bool vcsn::detail::log_impl::show_one ( )
inlinestatic

Definition at line 120 of file log.hh.

static symbol vcsn::detail::log_impl::sname ( )
inlinestatic

Definition at line 28 of file log.hh.

References vcsn::res.

Referenced by make().

value_t vcsn::detail::log_impl::star ( const value_t  v) const
inline

Definition at line 82 of file log.hh.

static constexpr star_status_t vcsn::detail::log_impl::star_status ( )
inlinestatic

Definition at line 121 of file log.hh.

References vcsn::STARRABLE.

static value_t vcsn::detail::log_impl::sub ( const value_t  l,
const value_t  r 
)
inlinestatic

Definition at line 58 of file log.hh.

static value_t vcsn::detail::log_impl::transpose ( const value_t  v)
inlinestatic

Definition at line 127 of file log.hh.

References vcsn::detail::v.

static value_t vcsn::detail::log_impl::zero ( )
inlinestatic

The zero for the log semiring is +oo.

Definition at line 42 of file log.hh.

Referenced by conv(), is_zero(), and mul().


The documentation for this class was generated from the following file: