#16207: FiniteStateMachine._latex_: more options, better documentation
-------------------------------------+-------------------------------------
Reporter: cheuberg | Owner:
Type: enhancement | Status: new
Priority: major | Milestone: sage-6.2
Component: combinatorics | Keywords:
Merged in: | finite_state_machine
Reviewers: | Authors: Clemens Heuberger
Work issues: | Report Upstream: N/A
Commit: | Branch: u/cheuberg/fsm
d6661e70a561f949bab7b3f5e319e9f4d48a53b6| /latex-improved
Stopgaps: | Dependencies: #16146, #16200,
| #16205
-------------------------------------+-------------------------------------
Improved {{{FiniteStateMachine._latex_}}}:
* use state iterators instead of lists
* move code format_transition_label
* collect tikz options in array
* typeset final_word_out, introduce relevant options: if a final state has
an attribute final_word_out, this is typeset as a leaving edge. This is
in preparation for #16191
* new method {{{latex_options}}}: Provide a new convenience function
collecting all options for LaTeX output. While all of its functionality
can also be achieved by directly setting attributes of
{{{FiniteStateMachine}}}, {{{FSMState}}} and {{{FSMTransition}}}, this
function also (somewhat) checks its input and serves to collect
documentation on all these options.
* Added a section in the introduction to the module explaining how to
latex a FiniteStateMachine and pointing to this method for details.
* Similarly, expanded explanations in {{{setup_latex_preamble}}}.
* Use {{{latex_options}}} in other doctest instead of direct attribute
assignment
* new method {{{default_format_transition_label}}}: Previously, when no
custorm {{{FiniteStateMachine.format_transition_label}}} was provided by
the user, words have simply typeset by calling latex. As words are always
lists, parentheses [ ] have always been printed.
This new default method typesets words by juxtaposition of their
letters, the letters are piped through {{{format_letter}}} first. The
latter now defaults to latex.
Finally, {{{format_transition_label}}} is by default set to
{{{default_format_transition_label}}} in the hope of providing a sensible
default value.
* Convenience Formatting functions for digit problems: When using negative
digits, it is quite customary to write e.g. {{{\overline{1}}}} instead of
{{{-1}}} in LaTeX. Introduce
{{{FiniteStateMachine.format_letter_negative}}} for this purpose.
Furthermore, In digit expansions, digits are frequently processed from
the least significant to the most significant position, but it is
customary to write the least significant digit at the right-most position.
Therefore, the labels have to be reversed. Provide a method
{{{FiniteStateMachine.format_transition_label_reversed}}} for this
purpose.
--
Ticket URL: <http://trac.sagemath.org/ticket/16207>
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 unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/sage-trac.
For more options, visit https://groups.google.com/d/optout.