Up to Index Up to Menus


The Configuration Menu

The Configuration Menu is used to check and set various aspects of Metalog.

The first option (Show Actual Configuration) gives a snapshort of the actual configuration.

The last option (Set to Default Configuration) sets the configuration to the default value that Metalog has when first instaled.

All the other intermediate options allows to edit various aspects of the configuration. In general, the default configuration for Metalog works well, so you do not need to modify it. However, in some circumstances it might be useful to tune up how Metalog works. The various options follows.

Set Answers for Query

In general, the answers to a query can be more than one. Metalog, by default, returns all the answers it can find. This options allows to switch on and off this behaviour: Metalog can return either all the answers to a Query, or just one (the first one it finds). The latter setting should be used when we just care about getting an answer, and not all of them: this is faster, and also safer, as generating all the possible answer might lead to an infinite calculation, depending on how the dialogue has been specified.

Set Containers in Assertions

Containers are, computationally speaking, tough cookies. While containers are very handy for expressing things, normal inference systems try to avoid them, as their implementations tend not to be very efficient. Metalog uses SWI-Prolog as main inference engine, and the latter does not support containers directly. Therefore, containers are simulated by Metalog using appropriate ordered lists: as such, in some situations Metalog has to enumerate all the possible combinations that are implicit in a container, by explicitly "exploding" the container. For instance, saying that

JOHN and MARY are MEMBERS of the TEAM..

usually also means that

MARY and JOHN are MEMBERS of the TEAM.

So, Metalog "explodes" the implicit additional information present in some containers, and explicitly produces all the related assertions for the inference system. This simulation allows the user not to give up the power of containers, and still allows the inference system to reason on them.

However, there is a price to pay: exploding very large containers is not efficient, and can considerably slow down the computation. For these (and other) reasons, you can turn on and off the explosion of containers in assertions using this menu option. By default, Metalog always explodes containers.

Set Containers in Queries

This option is in all analogous to the previous one, only that it handles with containers that are present in the queries. By default, Metalog always explodes containers in the queries, but you can switch off this behaviour.

Set Annotations in Output

We have seen that Metalog can express representations. However, representations, logically speaking, can be considered as flimsy placeholders, that are used just for reading/writing convenience. When interfacing with a logical inference system, all the representations would therefore normally go away. As a consequence, when obtaining a result we would have lost all the representations, making the answers quite unreadable. Metalog uses annotations to deal with this problem: annotations are special logical constructs that are used to encode representations. Such constructs are passed onto the inference system, and are therefore preserved. As a consequence, annotations are also returned nin the result, which allows Metalog to reconstruct the representations that are useful to make the answer more readable.

By default, Metalog uses annotations in output. Disabling this option makes the output smaller, but usually means that the answers are less readable, as they lose the representations part.

Set Erasing Temporary Files

When reasoning, Metalog uses several files, in a chain, to talk back and forth with the inference system. Such intermediate files are deleted by default, but this option allows to keep them, for debugging or analysis purposes (or, to possibly interface Metalog to other inference systems). Some care should be used, as keeping the temporary files means that, in the long term, there could be quite a number of them. In any case, when at any moment this option is turned on (so, to erase the temporary files), reasoning with Metalog will automatically delete all of them.

Set Erasing NT-input File

This option is analogous to the previous one, just, it concerns only those files which are in N-triple format. By default, Metalog deletes such files, but this behaviour can be switched off by using this option.

Set Erasing Result Files

The results of a query are displayed by Metalog in a new window. However, they can also be stored in a file, for future reference/use. By default, Metalog deletes all the result files: using this options allows to permanently store every result that Metalog computes.

The same caveat as the previous two options applies here: keeping the result files means that, in the long term, there could be quite a number of them. Anyway, just like the previous two options, turned on this option (so, to erase the result  files), implies that Metalog will automatically delete all previously obtained results when it reasons.

Set Console Messages

This option allows to display console messages, which is tantamount to running Metalog in a "verbose" mode: all the anwers, together with various other verbose comments, are visualized in the console. This option is turned off by default. Also, notes that turning on this option makes sense only if Metalog is running in console mode (so, for example, this option does nothing when running Metalog under Windows with the installer version, as there is no console).

Set N-triples format

The N-triples format consists of lines of the form subject predicate object. Sometimes, this can make N-triples quite hard to read, especially when long names are present. This options allows to switch from the default format (one line for each triple) to a more readable format, where three lines are use for each triple. Which means, that every N-triple of the form

subject predicate object.

will be instead printed as

subject
predicate
object.

Note that this latter format is non-standard, and therefore should be used with care when interoperating with other applications. The Metalog default configuration uses the standard format (one line for each triple).