Commit cc498e70 authored by Alexandre Duret-Lutz's avatar Alexandre Duret-Lutz
Browse files

org: run a spell checker on the documentation

* doc/org/autcross.org, doc/org/autfilt.org, doc/org/citing.org,
doc/org/compile.org, doc/org/concepts.org, doc/org/csv.org,
doc/org/dstar2tgba.org, doc/org/genaut.org, doc/org/genltl.org,
doc/org/hierarchy.org, doc/org/hoa.org, doc/org/index.org,
doc/org/install.org, doc/org/ltl2tgba.org, doc/org/ltl2tgta.org,
doc/org/ltlcross.org, doc/org/ltlfilt.org, doc/org/ltlgrind.org,
doc/org/ltlsynt.org, doc/org/oaut.org, doc/org/randaut.org,
doc/org/randltl.org, doc/org/satmin.org, doc/org/tut.org,
doc/org/tut01.org, doc/org/tut02.org, doc/org/tut03.org,
doc/org/tut04.org, doc/org/tut10.org, doc/org/tut11.org,
doc/org/tut12.org, doc/org/tut20.org, doc/org/tut21.org,
doc/org/tut22.org, doc/org/tut23.org, doc/org/tut24.org,
doc/org/tut30.org, doc/org/tut31.org, doc/org/tut50.org,
doc/org/tut51.org, doc/org/tut52.org, doc/org/tut90.org,
doc/org/upgrade2.org: Run ispell-buffer on all these.
* bin/autfilt.cc, python/spot/__init__.py: Fix typos in
help texts noticed while spell-checking the org files.
parent 0342161b
Pipeline #20621 passed with stage
in 118 minutes and 53 seconds
......@@ -90,7 +90,7 @@ Details about supported features of the HOA format can be found on a
The [[http://adl.github.io/hoaf/][HOA]] output should be the preferred format to use if you want to
pass automata between different tools. Since Spot 1.99.7, it is the
default output format, but you can explicitely request it using the
default output format, but you can explicitly request it using the
=-H= parameter and this allows passing additional options to the HOA
printer.
......@@ -453,12 +453,12 @@ of the default horizontal layout), =c= requests circle states, =s=
causes strongly-connected components to be displayed, =n= causes the
name (see below) of the automaton to be displayed, and =a= causes the
acceptance condition to be shown as well. Option =b= causes sets to
be ouput as bullets (e.g., ⓿ instead of ={0}=); option =r= (for
be output as bullets (e.g., ⓿ instead of ={0}=); option =r= (for
rainbow) causes sets to be displayed in different colors, while option
=R= also uses colors, but it chooses them depending on whether a set
is used with Fin-acceptance, Inf-acceptance, or both. Option
=C(COLOR)= can be used to color all states using =COLOR=, and the
option =f(FONT)= is used to select a fontname: it is often necessary
option =f(FONT)= is used to select a font name: it is often necessary
when =b= is used to ensure the characters ⓿, ❶, etc. are all selected
from the same font.
......@@ -623,7 +623,7 @@ Caveats:
compute the size of each label before calling GraphViz to layout the
graph. This is because GraphViz cannot compute the correct size of
mathematical formulas. Unfortunately, the release of =dot2tex
2.9.0= contains a bug where sizes are intepreted as integers instead
2.9.0= contains a bug where sizes are interpreted as integers instead
of floats. This can cause labels or shapes to disappear. This bug
of =dot2tex= was fixed in 2014, but at the time of writing
(summer 2017) no new release of =dot2tex= has been made. To work around this,
......@@ -649,7 +649,7 @@ Most tools support a common set of statistics about the output
automaton (like =%s= for the number of states, =%t= for transitions,
=%e= for edges, etc.). Additional statistics might be available
depending on what the tool does (for instance [[file:autfilt.org][=autfilt=]] also uses
capitaized letters =%S=, =%T=, and =%E= to display the same statistics
capitalized letters =%S=, =%T=, and =%E= to display the same statistics
about the input automaton). All the available statistics are
displayed when a tool is run with =--help=.
......@@ -760,7 +760,7 @@ genltl --or-gf=1..8 | ltl2tgba --high --stats='%f,%r,%R'
: GF(p1 | p2 | p3 | p4 | p5 | p6 | p7 | p8),0.480063,0.48
Note that =%r= is implemented using the most precise clock available
and usually has nano-second precision, while =%R= uses the =times()=
and usually has nanosecond precision, while =%R= uses the =times()=
system call (when available) and is usually only precise up to 1/100
of a second. However, as a wall-clock time, =%r= will also be
affected by the load of the machine: if a machine is overloaded, or
......@@ -950,4 +950,9 @@ rm -f out-det0.hoa out-det1.hoa
# LocalWords: labelloc rankdir subgraph lp pos invis gv png cmdline
# LocalWords: Tpng txt Hs Hm CSV Htl LBT dstar init goto fi Tpdf XF
# LocalWords: oaut vcsn randaut nondeterministic filename csv hoa
# LocalWords: varphi lnot GFb FG
# LocalWords: varphi lnot GFb FG args SRC Büchi rEctangular svg GFa
# LocalWords: FGa od DOTEXTRA DOTDEFAULT pdf Tsvg vcsna cas EOF xyz
# LocalWords: vcsnA Brf Lato ffffa vee arrowsize tex neato circo mv
# LocalWords: LaTeX TikZ PSTricks formater autosize nominsize tmp
# LocalWords: latexmk sbarx cd sudo py iw dges tates Rscript genltl
# LocalWords: gf GFp nano ltldo tba randltl det
......@@ -65,11 +65,12 @@ $txt
* Acceptance condition
The generation of the acceptance sets abn is controlled with the following four parameters:
The generation of the acceptance condition and acceptance sets is
controlled with the following four parameters:
- =-A ACCEPTANCE= (or =--acceptance=ACCEPTANCE=) controls both the acceptance condition,
and the number of associated acceptance sets. The =ACCEPTANCE= argument is documented
in =--help= as follows:
- =-A ACCEPTANCE= (or =--acceptance=ACCEPTANCE=) controls both the
acceptance condition, and the number of associated acceptance sets.
The =ACCEPTANCE= argument is documented in =--help= as follows:
#+BEGIN_SRC sh :exports results
randaut --help | sed -n '/^ \(ACCEPTANCE\|RANGE\)/,/^$/p'
#+END_SRC
......@@ -99,7 +100,7 @@ randaut --help | sed -n '/^ \(ACCEPTANCE\|RANGE\)/,/^$/p'
#+end_example
When a range of the form $i..j$ is used, the actual value is taken as randomly
When a range of the form $i..j$ is used, the actual value is taken randomly
between $i$ and $j$ (included).
- =-a= (or =--acc-probability=) controls the probability that any
......@@ -137,30 +138,6 @@ $txt
randaut -Q3 -e0.4 -B -a0.7 2 --dot
#+END_SRC
#+RESULTS: randaut5
#+begin_example
digraph G {
rankdir=LR
node [shape="circle"]
fontname="Lato"
node [fontname="Lato"]
edge [fontname="Lato"]
node[style=filled, fillcolor="#ffffa0"] edge[arrowhead=vee, arrowsize=.7]
I [label="", style=invis, width=0]
I -> 0
0 [label="0"]
0 -> 1 [label=<!p0 &amp; !p1>]
0 -> 2 [label=<!p0 &amp; !p1>]
1 [label="1", peripheries=2]
1 -> 1 [label=<!p0 &amp; !p1>]
1 -> 0 [label=<p0 &amp; p1>]
2 [label="2", peripheries=2]
2 -> 0 [label=<p0 &amp; p1>]
2 -> 2 [label=<p0 &amp; !p1>]
2 -> 1 [label=<!p0 &amp; !p1>]
}
#+end_example
#+BEGIN_SRC dot :file randaut5.svg :var txt=randaut5 :exports results
$txt
#+END_SRC
......@@ -237,7 +214,7 @@ automatically implies =--ba=.
Automata are send to standard output by default, by you can use =-o=
to give a filename, or even a pattern for filenames. For instance the
following generates 20 automatas, but store them in different files
following generates 20 automata, but store them in different files
according to the acceptance condition. The format =%g= represent the
formula for the acceptance condition and would not make a nice
filename, but =%[s]g= is a short name for that acceptance condition
......@@ -300,3 +277,7 @@ $txt
You should be able to find each of the expected type of SCCs in the above picture.
The green rectangles mark the three SCCs that contain some accepting cycles.
# LocalWords: utf randaut html args SRC svg txt randltl sed Buchi
# LocalWords: acc ba rankdir hoaf lbtt Hl wc rautaut SCCs SCC sccs
# LocalWords: A'parity
......@@ -341,4 +341,5 @@ non-length-matching variant of the =and= operator.
# LocalWords: Xc GFb Gc Xb Fb XFb Xa dups ltlfilt Fc XXc GX GFc XG
# LocalWords: rewritings ltl ap GF ANDed GFa boolean EConcat eword
# LocalWords: UConcat boolform andNLM concat Kleen eval setenv setq
# LocalWords: getenv
# LocalWords: getenv html args FGb nonnegative Fp FGp xargs LaTeX
# LocalWords: FGc subformula GXb fstar
......@@ -294,7 +294,7 @@ The following options can be used to fine-tune this procedure:
where is the difference? They both start by encoding the research of the
=N-1= step and then:
- =2= uses PicoSAT assumptions. It adds =sat-incr-steps= assumptions
(each of them removing one more state) and then checks direclty the
(each of them removing one more state) and then checks directly the
=N-1-(sat-incr-steps)= step. If such automaton is found, the process is
restarted. Otherwise, a binary search begins between =N-1= and
=N-1-sat-incr-steps=. If not provided, =sat-incr-steps= default value
......@@ -307,7 +307,7 @@ The following options can be used to fine-tune this procedure:
- =-x sat-minimize=4= :: enable SAT-based minimization. It tries to reduce the
size of the automaton one state at a time. This option implies
=-x tba-det=.
- =-x sat-incr-steps=N= :: set the value of =sat-incr-steps= to N. It doest not
- =-x sat-incr-steps=N= :: set the value of =sat-incr-steps= to N. It does not
make sense to use it without =-x sat-minimize=2= or =-x sat-minimize=3=.
- =-x sat-acc=$m$= :: attempt to build a minimal DTGBA with $m$ acceptance sets.
This options implies =-x sat-minimize=.
......@@ -497,7 +497,7 @@ The =--sat-minimize= option takes a comma separated list of arguments
that can be any of the following:
- =acc=DOUBLEQUOTEDSTRING= :: where the =DOUBLEQUOTEDSTRING= is an
acceptance formula in the [[http://adl.github.io/hoaf/#acceptance][HOA syntax]], or a parametrized acceptance
acceptance formula in the [[http://adl.github.io/hoaf/#acceptance][HOA syntax]], or a parameterized acceptance
name (the different [[http://adl.github.io/hoaf/#acceptance-specifications][=acc-name:= options from HOA]]).
- =max-states=N= :: where =N= is an upper-bound on the maximum
number of states of the constructed automaton.
......@@ -515,7 +515,7 @@ that can be any of the following:
starting automaton. Now, where is the difference? They both start by
encoding the research of the =N-1= step and then:
- =1= uses PicoSAT assumptions. It adds =steps= assumptions (each of
them removing one more state) and then checks direclty the
them removing one more state) and then checks directly the
=N-1-(sat-incr-steps)= step. If such automaton is found, the process is
restarted. Otherwise, a binary search begins between =N-1= and
=N-1-sat-incr-steps=. If not provided, =sat-incr-steps= defaults to 6.
......@@ -645,3 +645,10 @@ rm -f output.hoa output2.hoa
* Python interface
See the [[https://spot.lrde.epita.fr/ipynb/satmin.html][=satmin.ipynb=]] notebook.
# LocalWords: utf html args SRC tgba dstar DTBA DT PicoSAT LPAR GF
# LocalWords: unminimized SATSOLVER det tba degeneralized gfaexxb
# LocalWords: svg txt BD ltlfilt DRA wm nba acc arg ltldo DBA WDBA
# LocalWords: SCC TCONG powerset incr DTGBA wdba FGa FGb autfiltsm
# LocalWords: Buchi GFa GFb DOUBLEQUOTEDSTRING langmap SATLOG csv
# LocalWords: src sed sys satmin ipynb
......@@ -90,3 +90,7 @@ real notebooks instead.
- [[https://spot.lrde.epita.fr/ipynb/stutter-inv.html][=stutter-inv.ipynb=]] working with stutter-invariant formulas properties.
- [[https://spot.lrde.epita.fr/ipynb/satmin.html][=satmin.ipynb=]] Python interface for [[file:satmin.org][SAT-based minimization of deterministic ω-automata]].
- [[https://spot.lrde.epita.fr/ipynb/twagraph-internals.html][=twagraph-internals.ipynb=]] Inner workings of the =twa_graph= class.
# LocalWords: utf html bdd IPython ipynb io randaut accparse acc
# LocalWords: cond randltl genltl genaut scc testingaut ltsmin dve
# LocalWords: DiVinE LTSmin pml twa atva inv satmin twagraph
......@@ -463,3 +463,8 @@ _formula_format(self, spec)
formating function for strings.
#+end_example
# LocalWords: utf html args ltlfilt LBT lbt SRC GFp FGp LBT's str
# LocalWords: parenth parsers stex iostream psl superset nullptr GF
# LocalWords: subformulas simplifier simp sp lq CSV formatspec
# LocalWords: LaTeX formating
......@@ -155,3 +155,7 @@ ltlfilt -ps --relabel-bool=pnn --define -f 'a U (a & b)'
This "Boolean sub-expression" relabeling is available in Python and
C++ via the =relabel_bse= function. The interface is identical to
=relabel=.
# LocalWords: utf html args renamings SRC ltlfilt ps pnn ba prepend
# LocalWords: tmp defs init fi ltldo newname oldname str iostream
# LocalWords: abc Abc bool bse
......@@ -25,7 +25,7 @@ constructors for each supported operator.
The Boolean constants true and false are returned by =formula::tt()=
and =formula:ff()=. Atomic propositions can be built with
=formula::ap("name")=. Unary and binary operators use a
straighforward syntax like =formula::F(arg)= or =formula::U(first,
straightforward syntax like =formula::F(arg)= or =formula::U(first,
second)=, while n-ary operators take an initializer list as argument
as in =formula::And({arg1, arg2, arg3})=.
......@@ -48,7 +48,7 @@ Here is the list of supported operators:
formula::G(arg, min, max); // G[min..max] arg
formula::Closure(arg);
formula::NegClosure(arg);
formula::first_match(arg); // SVA's first match opetaror
formula::first_match(arg); // SVA's first match operator
// binary operators
formula::Xor(left, right);
formula::Implies(left, right);
......@@ -485,3 +485,8 @@ Here is the =F= and =G= exchange:
Like in C++, extra arguments to =map= and =traverse= are passed as
additional to the function given in the first argument.
# LocalWords: utf html args accessor Unary arg ary initializer SRC
# LocalWords: unary SVA's tl pdf subformulas subformula memoization
# LocalWords: iostream FGa GFb GFc fga gfb gfc kindstar kindstr DFS
# LocalWords: enum subtrees gcount cpp GF Fb xchg fg GFa FGb countg
......@@ -132,3 +132,5 @@ int main()
#+RESULTS:
: Equivalent
# LocalWords: utf html args ltlfilt SRC eq lnot otimes ng iostream
......@@ -215,3 +215,6 @@ translate(formula, *args, dict=<spot.impl.bdd_dict; proxy of <Swig Object of typ
so check out the spot-x(7) man page for details.
#+end_example
# LocalWords: utf html args SRC tgba GFa GFb init fi str aut xargs
# LocalWords: coBuchi StateBasedAcceptance SBAcc
......@@ -284,3 +284,7 @@ If your application requires monitors and you plan to build them with
Spot, it is very likely that you will want to convert the resulting
automata to your own data structure. See [[file:tut21.org][how to print an automaton in
a custom format]] to learn all you need to iterate over Spot's automata.
# LocalWords: utf html args SRC tgba Xyellow svg txt acc det str
# LocalWords: aut monitorable ltlfilt d'Amorim Roşu CAV Tabakov DFA
# LocalWords: Vardi SystemC SCCs determinize powerset
......@@ -240,7 +240,7 @@ perform some LTLf model checking, you should stop at step 3. Keep the
=alive= proposition in your property automaton, and also add it to the
Kripke structure representing your system.
Alternatively, if your Kripke structure is already equiped with some
Alternatively, if your Kripke structure is already equipped with some
=dead= property (as introduced by default in our [[https://spot.lrde.epita.fr/ipynb/ltsmin-dve.html][=ltsmin= interface]]),
you could replace =alive= by =!dead= by using ~ltlfilt
--from-ltl="!dead"~ (from the command-line), a running
......@@ -255,3 +255,7 @@ operator:
- The strong next: =X[!] a= is true if =a= hold in the next step *and*
there must be a next step. In particular =X[!]1= asserts that
there is a successor.
# LocalWords: utf LTLf html args ltlf src ltlfilt Fc tgba svg txt
# LocalWords: ap De Giacomo Vardi IJCAI Dutta Memocode acc Buchi ba
# LocalWords: postprocess aut det str NFA DFA ltsmin iff
......@@ -213,7 +213,7 @@ can be specified if needed.
There are actually different C++ interfaces to the automaton parser,
depending on your use case. For instance the parser is able to read a
stream of automata stored in the same file, so that they could be
processed in a loop. For this, you would instanciate a
processed in a loop. For this, you would instantiate a
=spot::automaton_stream_parser= object and call its =parse()= method
in a loop. Each call to this method will either return one
=spot::parsed_aut_ptr=, or =nullptr= if there is no more automaton to
......@@ -319,3 +319,6 @@ State: 1 {0}
#+BEGIN_SRC sh :results silent :exports results
rm -f tut20.never
#+END_SRC
# LocalWords: utf html args SRC init od LBTT's dstar's acc Buchi fi
# LocalWords: str lbtt aut BDDs bdd ptr nullptr
......@@ -562,7 +562,7 @@ Here is the very same example, but written in Python:
for t in aut.out(s):
print(" edge({} -> {})".format(t.src, t.dst))
# bdd_print_formula() is designed to print on a std::ostream, and
# is inconveniant to use in Python. Instead we use
# is inconvenient to use in Python. Instead we use
# bdd_format_formula() as this simply returns a string.
print(" label =", spot.bdd_format_formula(bdict, t.cond))
print(" acc sets =", t.acc)
......@@ -848,3 +848,7 @@ State 16:
#+BEGIN_SRC sh :results silent :exports results
rm -f tut21.hoa
#+END_SRC
# LocalWords: utf html args mathit src dst cond accsets tgba Fb Fc
# LocalWords: acc Buchi BDDs bdd ap ithvar aut const num init bdict
# LocalWords: varnum sep Templated
......@@ -47,7 +47,7 @@ automata in Spot.
// States are numbered from 0.
aut->new_states(3);
// The default initial state is 0, but it is always better to
// specify it explicitely.
// specify it explicitly.
aut->set_init_state(0U);
// new_edge() takes 3 mandatory parameters: source state,
......@@ -109,7 +109,7 @@ State: 2
# States are numbered from 0.
aut.new_states(3)
# The default initial state is 0, but it is always better to
# specify it explicitely.
# specify it explicitly.
aut.set_init_state(0)
# new_edge() takes 3 mandatory parameters: source state, destination state,
......@@ -202,7 +202,7 @@ whenever possible".
// States are numbered from 0.
aut->new_states(3);
// The default initial state is 0, but it is always better to
// specify it explicitely.
// specify it explicitly.
aut->set_init_state(0U);
// new_edge() takes 3 mandatory parameters: source state,
......@@ -267,7 +267,7 @@ State: 2
# States are numbered from 0.
aut.new_states(3)
# The default initial state is 0, but it is always better to
# specify it explicitely.
# specify it explicitly.
aut.set_init_state(0)
# new_edge() takes 3 mandatory parameters: source state, destination state,
......@@ -405,3 +405,6 @@ State: 2
[0 | 1] 1 {0 2}
--END--
#+end_SRC
# LocalWords: utf html args SRC tgba TGBAs cpp bdd aut twa ap buchi
# LocalWords: ithvar init acc bdict BuDDy str sba setacc cond
......@@ -61,7 +61,7 @@ edges (declared with =new_edge()=) and universal edges (declared with
// States are numbered from 0.
aut->new_states(3);
// The default initial state is 0, but it is always better to
// specify it explicitely.
// specify it explicitly.
aut->set_init_state(0U);
// new_edge() takes 3 mandatory parameters: source state,
......@@ -128,7 +128,7 @@ State: 2
# States are numbered from 0.
aut.new_states(3)
# The default initial state is 0, but it is always better to
# specify it explicitely.
# specify it explicitly.
aut.set_init_state(0);
# new_edge() takes 3 mandatory parameters: source state, destination state,
......@@ -181,3 +181,6 @@ alternating automaton.
Once you have built an alternating automaton, you can [[file:tut31.org][remove the
alternation]] to obtain a non-deterministic Büchi or generalized Büchi
automaton.
# LocalWords: utf html args GFa SRC txt cpp EOF aut svg bdd twa ap
# LocalWords: ithvar init bddtrue acc Buchi bdict BuDDy str
......@@ -239,3 +239,8 @@ State 2:
#+BEGIN_SRC sh :results silent :exports results
rm -f tut24.hoa
#+END_SRC
# LocalWords: utf html args noweb SRC acc Buchi EOF svg txt aut num
# LocalWords: nonalt init const src dst cond dest aut init dst SRC
# LocalWords: dests nonalt num src cond acc noweb bdict ui str ud
# LocalWords: bdd
......@@ -35,7 +35,7 @@ any acceptance to Büchi acceptance.
We use =autfilt= with option =-B= to request Büchi acceptance and
state-based output and =-D= to express a preference for deterministic
output. Using option =-D/--deterministic= (or =--small=) actually
activates the "postprocessing" routines of Spot: the acceptance will
activates the "post-processing" routines of Spot: the acceptance will
not only be changed to Büchi, but simplification routines (useless
SCCs removal, simulation-based reductions, acceptance sets
simplifications, WDBA-minimization, ...) will also be applied.
......@@ -84,7 +84,7 @@ $txt
In the general case transforming an automaton with a complex
acceptance condition into a Büchi automaton can make the output
bigger. However the postprocessing routines may manage to simplify
bigger. However the post-processing routines may manage to simplify
the result further.
......@@ -139,7 +139,7 @@ Help on function postprocess in module spot:
postprocess(automaton, *args, formula=None, xargs=None)
Post process an automaton.
This applies a number of simlification algorithms, depending on
This applies a number of simplification algorithms, depending on
the options supplied. Keep in mind that 'Deterministic' expresses
just a preference that may not be satisfied if the input is
not already 'Deterministic'.
......@@ -234,3 +234,7 @@ State: 4
#+BEGIN_SRC sh :results silent
rm -f tut30.hoa
#+END_SRC
# LocalWords: utf html args dstar SRC ltldo Xp XXp svg txt SCCs acc
# LocalWords: WDBA Buchi postprocess aut str xargs TGBA coBuchi
# LocalWords: StateBasedAcceptance SBAcc postprocessor
......@@ -174,3 +174,6 @@ State: 1
#+BEGIN_SRC sh :results silent
rm -f tut31.hoa
#+END_SRC
# LocalWords: utf html args SRC acc Buchi noweb EOF svg txt SCCs
# LocalWords: TGBA tgba aut str
......@@ -214,7 +214,7 @@ syntax of C++ works exactly as if we had typed
In the above =example()= function, the iterators =i= and =end= are
instances of the =internal::edge_iterator<spot::twa_graph::graph_t>=
class, which redefines enough operators to act like an STL Foward
class, which redefines enough operators to act like an STL Forward
Iterator over all outgoing edges of =s=. Note that the =tmp= and =i=
objects hold a pointer to the graph, but it does not really matter
because the compiler will optimize this away.
......@@ -444,7 +444,7 @@ the entire automaton in memory; if they prefer, they can compute it as
it is explored.
Naturally =twa_graph=, even if it stores the automaton graph
explicitly, is a subclasse of =twa=, so it also implements the
explicitly, is a subclass of =twa=, so it also implements the
on-the-fly interface but without computing anything.
** How this interface works
......@@ -889,3 +889,8 @@ print it.
: 1->1
: 0->2
: 2->2
# LocalWords: utf html args twa twagraph ipynb SRC plantuml uml svg
# LocalWords: stl bool src dst succ distate typedef bdd ptr init
# LocalWords: cond acc aut FGa FGb tmp inlined DFS dfs num ish todo
# LocalWords: Subclasses otf iterable iter emplace srcit
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment