#12224: Language as parent / Word as element
-----------------------------+----------------------------------------------
   Reporter:  vdelecroix     |          Owner:  vdelecroix                      
 
       Type:  enhancement    |         Status:  new                             
 
   Priority:  major          |      Milestone:  sage-4.8                        
 
  Component:  combinatorics  |       Keywords:  word, language, symbolic 
dynamics
Work_issues:                 |       Upstream:  N/A                             
 
   Reviewer:                 |         Author:  Vincent Delecroix               
 
     Merged:                 |   Dependencies:  #10193                          
 
-----------------------------+----------------------------------------------
Changes (by vdelecroix):

  * dependencies:  => #10193


Old description:

> This ticket is a prerequisite to further development in the combinatorics
> of words and symbolic dynamical systems (adic language, SFT, ...).
>
> Roadmap:
>  * implement Language (= set of Word) and its children FactorialLanguage,
> ProlongableLanguage, etc
>  * consider a word as element of a language and move elsewhere the
> methods of Word that does not fit to this framework
>  * change Words into FreeMonoid
>  * coercion
>
> see also: #12225, #12227

New description:

 This ticket is a prerequisite to further development in the combinatorics
 of words and symbolic dynamical systems (adic language, SFT, ...). It
 concerns the implementation of a class "Language" (= graded set of words)
 as a Parent and a class "Word" as Element.

 Roadmap:
  * Use EnumeratedSets and GradedEnumeratedSets to build a class Language
 and use it as a base class for
 sage.combinat.words.words.Words_over_ordered_alphabet
  * move into a derived class the current methods of Word that does not fit
 to this framework
  * Inheritate from Monoid for the language of all words on a given
 alphabet and see the overlap with the code in sage.monoids.*
  * coercion between different languages (on the top is the FreeMonoid)

 To think about:
  * what should be in the parent, what should be in the element ?
  * what do we keep of the current methods of Word ?
  * in general a language is not a monoid... but some of them are
 (FullShift, the words with the same number of each letter, ...). Find a
 way to use the Monoid category in these cases. Remark that a language
 which is also a monoid is completely defined by its irreducible words (the
 word that can not be built from concatenation of smaller words).

 see also: #12225, #12227

--

-- 
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/12224#comment:2>
Sage <http://www.sagemath.org>
Sage: Creating a Viable Open Source Alternative to Magma, Maple, Mathematica, 
and MATLAB

-- 
You received this message because you are subscribed to the Google Groups 
"sage-trac" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/sage-trac?hl=en.

Reply via email to