Skip to content
  • Sarasvati Moutoucomarapoulé's avatar
    property: implement cache for automata · e64bd102
    Sarasvati Moutoucomarapoulé authored
    Some properties of an automaton will now be cached. For now, only "is_proper"
    is cached.
    
    * vcsn/core/property-cache.hh: Here. It is possible to change values in
      the cache, to update values defined for algorithm and to print a specific
      property.
    
    * lib/vcsn/misc/property-indexer.cc,
    * vcsn/misc/property-indexer.hh: Singleton generating properties' indices.
    
    * lib/vcsn/misc/property.cc,
    * vcsn/misc/property.hh: Define properties and default 'function_prop', which
      specifies predefined values for properties when an algorithm/function is
      applied on the automatom.
    
    * vcsn/core/mutable-automaton.hh: Add a property cache.
    
    * vcsn/core/automaton-decorator.hh: Forward property cache accessor call.
    
    * vcsn/core/permutation-automaton.hh: Copy input property cache.
    
    * vcsn/algos/filter.hh,
    * vcsn/algos/transpose.hh: Add a specific property cache.
    
    * vcsn/algos/accessible.hh,
    * vcsn/algos/add.hh,
    * vcsn/algos/cerny.hh,
    * vcsn/algos/complement.hh,
    * vcsn/algos/complete.hh,
    * vcsn/algos/compose.hh,
    * vcsn/algos/conjugate.hh,
    * vcsn/algos/conjunction.hh,
    * vcsn/algos/copy.hh,
    * vcsn/algos/de-bruijn.hh,
    * vcsn/algos/derived-term.hh,
    * vcsn/algos/determinize.hh,
    * vcsn/algos/divkbaseb.hh,
    * vcsn/algos/double-ring.hh,
    * vcsn/algos/inductive.hh,
    * vcsn/algos/insplit.hh,
    * vcsn/algos/is-proper.hh,
    * vcsn/algos/ladybird.hh,
    * vcsn/algos/letterize.hh,
    * vcsn/algos/lift.hh,
    * vcsn/algos/minimize-brzozowski.hh,
    * vcsn/algos/minimize-hopcroft.hh,
    * vcsn/algos/minimize.hh,
    * vcsn/algos/multiply.hh,
    * vcsn/algos/normalize.hh,
    * vcsn/algos/pair.hh,
    * vcsn/algos/partial-identity.hh,
    * vcsn/algos/prefix.hh,
    * vcsn/algos/project-automaton.hh,
    * vcsn/algos/proper.hh,
    * vcsn/algos/push-weights.hh,
    * vcsn/algos/quotient.hh,
    * vcsn/algos/quotkbaseb.hh,
    * vcsn/algos/reduce.hh,
    * vcsn/algos/sort.hh
    * vcsn/algos/standard.hh,
    * vcsn/algos/star.hh,
    * vcsn/algos/synchronize.hh,
    * vcsn/algos/thompson.hh,
    * vcsn/algos/to-expression.hh,
    * vcsn/algos/to-spontaneous.hh,
    * vcsn/algos/trie.hh,
    * vcsn/algos/tuple-automaton.hh,
    * vcsn/algos/u.hh,
    * vcsn/algos/universal.hh,
    * vcsn/algos/weight.hh: Define function tags and properties, update property
      cache.
    
    * vcsn/algos/info.hh: Print properties (only is_proper for now).
    
    * doc/notebooks/automaton.info.ipynb,
    * tests/python/info.py,
    * tests/python/project.py,
    * tests/python/transpose.py,
    * tests/unit/proper.chk: Update 'is proper' value.
    
    * tests/python/is-proper.py,
    * tests/python/lift.py,
    * tests/python/proper.py: Check property cache value.
    
    * lib/vcsn/local.mk,
    * vcsn/local.mk: Add files.
    e64bd102