contents index next

11. Global Variables

This section lists the global variables and documents their effect. Global variables can be set from the command line and the command interpreter using Var=Val. You can also set variables using the Settings menu of the graphical user interface. Note that global variables use the blackboard primitives; all keys are module expanded using the fsa module.

11.1. tkconsol

Boolean flag which determines whether library(tkconsol) is used for standard output. Note that support for tkconsol is very experimental. Current value is off. Default value is off. Typical values are [on,off]

11.2. tk_fsa_add_help_menu

Boolean flag which determines whether on-line help information is added to the menu. Since this takes quite a bit of band-width, you might want to turn it off for slow internet connections. Current value is on. Default value is on. Typical values are [on,off]

11.3. fsa_tcl_directory

Path to the directory in which the FSA tcl scripts are installed Current value is none. Default value is none. Typical values are []

11.4. pred_module

Default module for interpreting predicates on symbols. Current value is fsa_preds. Default value is fsa_preds. Typical values are [fsa_preds,fsa_frozen]

11.5. regex

Used internally Current value is []. Default value is []. Typical values are []

11.6. fa

Used internally Current value is []. Default value is []. Typical values are []

11.7. hash_size

Default size for hashes (refer to library fsa_arrays for detail). Current value is 65025. Default value is 65025. Typical values are [500,1000,5000,10000,50000,100000,250000,500000,1000000]

11.8. interactive

This flag can be used to indicate that you want to run FSA interactively, even if you provide a command-line argument which would normally cause non-interactive usage. The value cmdint also implies interactivity but in addition the command interpreter is started. Current value is off. Default value is off. Typical values are [on,off,cmdint]

11.9. pstricks_style

Determines what kind of pstricks picture is contructed; at the moment fancy and plain are equivalent except that fancy implies that colors are used. Current value is plain. Default value is plain. Typical values are [fancy,plain]

11.10. v_algorithm

One of dot or tree. The first uses AT&T's dot program (from the GraphViz package) to compute geometry of states. The latter uses a built-in method which works reasonable for small graphs. Current value is tree. Default value is tree. Typical values are [tree,dot]

11.11. v_tree_depth

Is used by the tree algorithm for visualisation. Its effect has been forgotten by the author. Current value is off. Default value is off. Typical values are [on,off]

11.12. v_angle

Angle of edges in visualization of automata on Tk Canvas, as well as for postscript and latex output. A value of 0 implies straight lines between nodes. For larger values the lines that are drawn between nodes will move further away from the straight line. Current value is 0.15. Default value is 0.15. Typical values are [0.1,0.15,0.2,0.3,0.4,0.5,1.0]

11.13. v_xdist

Horizontal distance of states in visualization of automata on Tk Canvas, as well as for postscript and latex output. Current value is 120. Default value is 120. Typical values are [40,60,80,100,120,150,200]

11.14. v_ycoord

Used internally by the tree algorithm for visualization. I don't think it matters. Current value is 200. Default value is 200. Typical values are []

11.15. display_unused_states

This boolean variable determines whether states should be visualized which have no outgoing or incoming transitions, and which are neither a start state. Current value is on. Default value is on. Typical values are [on,off]

11.16. fl_arbitrary_symbol

This flag determines which atomic symbol should be used if transducers are compiled to C, C++ or Java, and the transducer contains don't care outputs. The value must be a Prolog atom. For example, if the transducer is given by [c,?,a:?]* and the value of this flag is '?', then the input

cxacyacza

will be mapped to

cx?cy?cz?

Current value is ?. Default value is ?. Typical values are [?,0,#]

11.17. symbol_separator

This flags determines which character is used to separate sequences of symbols that are accepted/transduced. For instance, if the value is 32 (for space) then you can type

a b a bb b aaa

to indicate the sequence of six symbols a, b, a, bb, b, and aaa. If the value is 44 (for comma) the same sequence is written/read as

a,b,a,bb,b,aaa

As a special case, a value of 0 indicates that a sequence is written without a separator; every single letter is assumed to be a symbol. For instance,

ababba

represents the sequence of symbols a, b, a, b, b and a.

Current value is 0. Default value is 0. Typical values are [0,32,43,44,45]

11.18. symbol_separator_out

As global variable symbol_separator, but only for output. If this variable is undefined, then the value of the global variable symbol_separator is used instead. Current value is undefined. Default value is undefined. Typical values are [undefined,0,32,43,44,45]

11.19. symbol_separator_in

As global variable symbol_separator, but only for input. If this variable is undefined, then the value of the global variable symbol_separator is used instead. Current value is undefined. Default value is undefined. Typical values are [undefined,0,32,43,44,45]

11.20. nr_sol_max

For the produce and the transduce options this global variable determines how many transductions for each input string should be given at most. Current value is 25. Default value is 25. Typical values are [1,5,10,25,50,100,1000,10000]

11.21. length_max

For the produce options this global variable determines the maximum length of strings that should be produced. In the case of transducer the variable determines maximum length of left string. A value of 0 indicates no restriction (in that case strings are not produced in order of length). Current value is 30. Default value is 30. Typical values are [0,5,10,25,50,100,1000,10000]

11.22. interpreter

This boolean flag indicates whether input automata for fsa_interpreter are compiled (by fsa_compiler_to_prolog) or interpreted. Current value is on. Default value is on. Typical values are [on,off]

11.23. debug

A value 0 indicates no continuation messages at all. A value of 1 will give cputime of operation. A level of 2 will give cputime of all intermediate operations too. Finally, level 3 is used for detailed continuation messages Current value is 0. Default value is 0. Typical values are [0,1,2,3,4]

11.24. regex_cache

This global variable determines whether regular expression compilations are cached or not. If the value selective is used, then only those operators are cached for which

bb_get(fsa_regex_cache:Fun)

succeeds. Current value is selective. Default value is selective. Typical values are [on,off,selective]

11.25. determinize_preds_cache

This global variable determines whether during the determinization algorithm the determinize_preds predicate should be cached. This is typically much faster, but requires much more memory in some cases. Current value is on. Default value is on. Typical values are [on,off]

11.26. cleanup_list_cache

This global variable determines whether during the cleanup algorithm the determinize_preds predicate should be cached. This is typically faster, but requires more memory in some cases. Current value is on. Default value is on. Typical values are [on,off]

11.27. set_random

This boolean global variable indicates whether the random generator should start with a new seed or not. If off the sequence of randomly generated automata will be the same for different FSA incarnations. Current value is off. Default value is off. Typical values are [on,off]

11.28. w_determinizer_minimum

This flag determines whether the t_determinizer applied to transducers using the fsa_weights semiring should only consider paths with lowest scores. Current value is on. Default value is on. Typical values are [on,off]

11.29. read

This global variable determines the format of input automata. The formats are explained in module(fsa_io). Current value is normal. Default value is normal. Typical values are [normal,old,fast,compact,fsm,grail]

11.30. write

This global variable determines the format of output automata. The formats are explained in module(fsa_io). Current value is normal. Default value is normal. Typical values are [normal,old,fast,compact,postscript,vcg,davinci,dot,pstricks,latex,prolog,c,count,fsm,java,cpp,grail]

11.31. count

This global variable determines if results are displayed in long or short format for the count output format, the -count option and the fsa_count predicate. Current value is long. Default value is long. Typical values are [short,long]

11.32. postscript_res

This variable determines which version of postscript output is used. lowres is better used for conversion to pngs, normal is better used for printing postscript Current value is normal. Default value is normal. Typical values are [normal,lowres]

11.33. no_display_beyond

Integer which determines a maximum number of states for automata that are displayed by any of the visualization tools. Automata with more states are not displayed; in such cases a small automaton is displayed indicating that the maximum was reached. Current value is 50. Default value is 50. Typical values are [30,40,50,100,1000]

11.34. c_with_main

This variable has effect for compilation of automata to C. If on, then the resulting C program will contain a main procedure. If off no such main procedure will be created. Current value is on. Default value is on. Typical values are [on,off]

11.35. java_with_main

This variable has effect for compilation of automata to JAVA. If on, then the resulting JAVA program will contain a main procedure. If off no such main procedure will be created. Current value is on. Default value is on. Typical values are [on,off]

11.36. cpp_with_main

This variable has effect for compilation of automata to C++. If on, then the resulting C++ program will contain a main procedure. If off no such main procedure will be created. Current value is on. Default value is on. Typical values are [on,off]

11.37. to_c_conversion

Boolean variable which has effect for compilation of automata to C, cf the fsa_compiler_to_c module for details. If on, the automaton is converted first; otherwise it's assumed the input is already converted. Current value is on. Default value is on. Typical values are [on,off]

11.38. to_java_conversion

Boolean variable which has effect for compilation of automata to JAVA, cf the fsa_java module for details. If on, the automaton is converted first; otherwise it's assumed the input is already converted. Current value is on. Default value is on. Typical values are [on,off]

11.39. to_cpp_conversion

Boolean variable which has effect for compilation of automata to C++, cf the fsa_cpp module for details. If on, the automaton is converted first; otherwise it's assumed the input is already converted. Current value is on. Default value is on. Typical values are [on,off]

11.40. fl_multiple_symbol_start

If transducers are compiled to C, C++ or Java, then if they contain final states with multiple outputs these multiple outputs are combined into a single output. This single output starts with a special symbol: the value of the f_multiple_symbol_start flag. The single output is constructed by concatenating each of the possible outputs, separated by the value of the fl_multiple_symbol_separator flag. For example, the transducer defined by the expression {a:b,a:c,a:d} will write out the symbol #d|c|b assuming that fl_multiple_symbol_start is # and fl_multiple_symbol_sep is |. Current value is #. Default value is #. Typical values are [#]

11.41. fl_multiple_symbol_separator

If transducers are compiled to C, C++ or Java, then if they contain final states with multiple outputs these multiple outputs are combined into a single output. This single output starts with a special symbol: the value of the f_multiple_symbol_start flag. The single output is constructed by concatenating each of the possible outputs, separated by the value of the fl_multiple_symbol_separator flag. For example, the transducer defined by the expression {a:b,a:c,a:d} will write out the symbol #d|c|b assuming that fl_multiple_symbol_start is # and fl_multiple_symbol_sep is |. Current value is |. Default value is |. Typical values are [|]

contents index next