3 Watch and Influence the Communication

3.1 Functions

3.1-1 homalgIOMode

‣ homalgIOMode( str[, str2[, str3]] )

( function )

This function sets different modes which influence how much of the communication becomes visible. Handling the string str is not case-sensitive. homalgIOMode invokes the global function homalgMode defined in the homalg package with an "appropriate" argument (see code below). Alternatively, if a second or more strings are given, then homalgMode is invoked with the remaining strings str2, str3, ... at the end. In particular, you can use homalgIOMode( str, "" ) to reset the effect of invoking homalgMode.

str

str (long form)

mode description

""

""

the default mode, i.e. the communication protocol won't be visible

(homalgIOMode( ) is a short form for homalgIOMode( "" ))

"a"

"all"

combine the modes "debug" and "file"

"b"

"basic"

the same as "picto" + homalgMode( "basic" )

"d"

"debug"

view the complete communication protocol

"f"

"file"

dump the communication protocol into a file with the name

Concatenation( "commands_file_of_", CAS, "_with_PID_", PID )

"p"

"picto"

view the abbreviated communication protocol

using the preassigned pictograms

All modes other than the "default"-mode only set their specific values and leave the other values untouched, which allows combining them to some extent. This also means that in order to get from one mode to a new mode (without the aim to combine them) one needs to reset to the "default"-mode first.

Caution:

In case you choose one of the modes "file" or "all" you might want to set the global variable HOMALG_IO.DoNotDeleteTemporaryFiles := true; this is only important if during the computations some matrices get converted via files (using ConvertHomalgMatrixViaFile), as reading these files will be part of the protocol!

It makes sense for the dumped communication protocol to be (re)executed with the respective external system, only in case the latter is deterministic (i.e. same-input-same-output).