#12224: Language as parent / Word as element
-----------------------------------------------------------------+----------
Reporter: vdelecroix |
Owner: vdelecroix
Type: enhancement |
Status: new
Priority: major |
Milestone: sage-5.6
Component: combinatorics |
Resolution:
Keywords: word, language, symbolic dynamics | Work
issues:
Report Upstream: N/A |
Reviewers:
Authors: Vincent Delecroix | Merged
in:
Dependencies: #8920, #12230, #12518, #13778, #13956, #13957 |
Stopgaps:
-----------------------------------------------------------------+----------
Description changed by slabbe:
Old 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.
>
> Three categories are created: Languages, FactorialLanguages and Shifts
> that gather several methods of finite and infinite words. For speed
> reason there are base Cython classes for
> * finite word (in sage.combinat.words.finite_word)
> * infinite word (in sage.combinat.words.infinite_word)
> * language (in sage.combinat.languages.language)
>
> Every implementation must inherit from the class above (it is check in
> the TestSuite of the related categories).
>
> The previous code of Word is dispatched between the ElementMethods of the
> category and the Cython class FiniteWord. The choice has been made for
> sake of optimization.
>
> see also: #12225, #12227
>
> To import and apply all patches do
> {{{
> cd SAGE_ROOT/devel/YOUR_BRANCH
> hg qimport http://trac.sagemath.org/sage_trac/raw-
> attachment/ticket/8920/trac_8920-alphabet.patch
> hg qpush
> hg qimport http://trac.sagemath.org/sage_trac/raw-
> attachment/ticket/12466/trac_12466-ss.patch
> hg qpushhg qimport http://trac.sagemath.org/sage_trac/raw-
> attachment/ticket/12230/trac_12230-growing_letters-ss.patch
> hg qpush
> hg qimport http://trac.sagemath.org/sage_trac/raw-
> attachment/ticket/12230/trac_12230-growing_letters-review-vd.patch
> hg qpush
> hg qimport http://trac.sagemath.org/sage_trac/raw-
> attachment/ticket/13956/trac_13956-shift_argument.patch
> hg qpush
> hg qimport http://trac.sagemath.org/sage_trac/raw-
> attachment/ticket/13957/trac_13957-catch_value_error.patch
> hg qpush
> hg qimport http://trac.sagemath.org/sage_trac/raw-
> attachment/ticket/12224/trac_12224-language.patch
> hg qpush
> }}}
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.
Three categories are created: Languages, FactorialLanguages and Shifts
that gather several methods of finite and infinite words. For speed reason
there are base Cython classes for
* finite word (in sage.combinat.words.finite_word)
* infinite word (in sage.combinat.words.infinite_word)
* language (in sage.combinat.languages.language)
Every implementation must inherit from the class above (it is check in the
TestSuite of the related categories).
The previous code of Word is dispatched between the ElementMethods of the
category and the Cython class FiniteWord. The choice has been made for
sake of optimization.
see also: #12225, #12227
To import and apply all patches do
{{{
cd SAGE_ROOT/devel/YOUR_BRANCH
hg qimport http://trac.sagemath.org/sage_trac/raw-
attachment/ticket/8920/trac_8920-alphabet.patch
hg qpush
hg qimport http://trac.sagemath.org/sage_trac/raw-
attachment/ticket/12466/trac_12466-ss.patch
hg qpush
hg qimport http://trac.sagemath.org/sage_trac/raw-
attachment/ticket/12230/trac_12230-growing_letters-ss.patch
hg qpush
hg qimport http://trac.sagemath.org/sage_trac/raw-
attachment/ticket/12230/trac_12230-growing_letters-review-vd.patch
hg qpush
hg qimport http://trac.sagemath.org/sage_trac/raw-
attachment/ticket/13956/trac_13956-shift_argument.patch
hg qpush
hg qimport http://trac.sagemath.org/sage_trac/raw-
attachment/ticket/13957/trac_13957-catch_value_error.patch
hg qpush
hg qimport http://trac.sagemath.org/sage_trac/raw-
attachment/ticket/12224/trac_12224-language.patch
hg qpush
}}}
--
--
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/12224#comment:16>
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.