Guide Scroll To Bottom


guide

This help article describes how to use the Mystery Master application (or simply app) to view and solve logic puzzles. The app gives you complete control over how much help you want in solving a logic puzzle. You can go from having the application solve the puzzle for you, to disabling all help so you can solve the puzzle on your own. These options are found in the Setup form. The example logic puzzle for this article is "All Tired Out".

Splash Screen

Here is the splash screen for the Mystery Master application. I'm currently not using a splash screen for the web version of the Mystery Master application.

Splash Screen

User Interface

The user interface (UI) allows you to interact with an application. The two main components of the Mystery Master UI are the following.

  1. The Board component - displays information about the puzzle while it is being solved.
  2. The Tabby component - allows you to select a form that displays specific information about solving the puzzle.

The Board Component

The Board component, aka control board, dashboard, or simply board, displays information while the puzzle is being solved. The two controls you can touch on this form are the two buttons, similar to the Play and Stop buttons on a multimedia player. The states (captions) for the Play button are: Solve, Pause, and Resume. Pressing the Solve button will solve the puzzle (depending on your options). While the puzzle is being solved, the Play button will act as a Pause/Resume button, which allows you to pause and resume solving the puzzle. The states for the Stop button are Quit and Reset. Pressing the Quit button will stop the solver, and pressing the Reset button will clear any information found while solving the puzzle.

Below is an example of the board before a puzzle has been loaded.

Level Pairs of Facts of Hits
Guess Marks of Rules of Hits

The Tabby Component

The Tabby component is a tabbed interface for showing one of many forms. When you click on a tab, it displays a specific form. The first 5 tabs display a "piece of the puzzle" (pun intended). The next 4 tabs display information while the puzzle is being solved. And the Setup tab displays various options for solving a logic puzzle. Below are the tabs. You can click on a tab to jump to that section.

Nouns Verbs Links Facts Rules Marks Chart Grids Stats Setup

I should point out that there are several factors that determine the difficulty of a puzzle, like the number of nouns and noun types in the puzzle, the number of links between the nouns, the number of facts, and if the puzzle needs rules. And some puzzles that have rules may need you to make assumptions.

The Nouns Form

This form displays the objects in a puzzle, grouped into columns by noun type. The first column in the form is the one-based number of each noun. Our example logic puzzle has 3 noun types: Order, Customer and Wanted. Notice that the name for each noun type is singular, not plural. The first noun type Order has the nouns: 1st, 2nd, 3rd, 4th, and 5th. The second type Customer has the nouns: Ethan, Grace, Jeff, Lisa, and Marge. And the third type Wanted has the nouns: Alignment, Chains, Jack, Shocks, and Tires. You cannot edit the data on this form.

Usually it does not matter how the nouns are entered, but there is one important exception: If the nouns are used in a link, then there must be a logical order for the nouns.

The Verbs Form

This form displays the verbs used in a puzzle. Verbs are unique in that they are automatically created by the application. There are exactly three verbs, the negative verb, the positive verb, and the possible verb. The goal of solving a logic puzzle is to turn the possible verbs into negative and positive verbs. The verbs are displayed in the Grids form. You can modify the code for each verb, and the new code will appear in the grids once they have been refreshed. For example, you can change the code for the possible verb from a blank (' ') to a question mark ('?').

The columns in this form are:

  1. The number of the verb.
  2. The type of the verb.
  3. The name of the verb.
  4. The code (character) that represents the verb.

Note: The application assigns the verbs to the variables: IsNot, Is, and Maybe. For the picky grammartarians and strict code-namers out there, I know maybe is an adverb and the word may in may be is an auxiliary verb. So should I use the phrase "may be" and the variable name MayBe, or the phrase "maybe" and the name Maybe? I obviously have a hybrid solution. I want the name to be Maybe, but I mean to say "A boy may be first in line.", not "Maybe a boy is first in line."

The Links Form

This form displays the links in a puzzle. The links are the relationships between any two nouns in the clues. The first link for every puzzle is "with". Except for the first link, the order of the links does not matter. They just cannot change once they are referenced by the facts. You cannot edit the data on this form.

The columns in this form are:

  1. The zero-based number of the link. Zero is always the number for the "with" link.
  2. The noun type of the link.
  3. The name of the link.
  4. Whether the link is one-to-one. This is determined by the program. A link is one-to-one if it has exactly one positive verb per row and per column.

For our example puzzle, all of the links use the noun type Order, so the nouns must be in a logical order. It may seem obvious, but the nouns must be in this order: 1st, 2nd, 3rd, 4th, 5th.

Each link has a corresponding Link Grid which represents the output of the link's function. This shows you if the noun in the left-most row does or does not have this relationship with the noun in the upper-most column.

The "with" grid will always display the positive verb for a noun that is with itself. That's why the relationship is called "with". And because "with" only has one positive verb per row, the "with" link is a one-to-one relationship. Note: the application assigns this link to the variable With.

The "just ahead" grid tells you "1st is just ahead of 2nd", "2nd is just ahead of 3rd", "3rd is just ahead of 4th", and "4th is just ahead of 5th". You can see that the 5th position is not just ahead of anything, because it is the last position. The "just ahead" link is one-to-one.

The "three places ahead" grid tells you "1st is three places ahead of 4th" and "2nd is three places ahead of 5th". This link is one-to-one.

Last but not least, the "next to" grid tells you that "1st is next to 2nd", "2nd is next to 1st" and "2nd is next to 3rd", "3rd is next to 2nd" and "3rd is next to 4th", and "5th is next to 4th". Though the 1st and 5th positions only have one position next to them, the 2nd, 3rd, and 4th positions have two, so this link is not one-to-one.

The Facts Form

This form displays the facts in a puzzle. All clues must be expressed as facts and/or rules. Facts are static expressions, and are easy to enter. You can enable/disable a fact by clicking its checkmark. If you want to see how this form looks after the solution is found, click here.

The columns in this form are:

  1. The one-based number of the fact.
  2. Whether the fact is enabled (checked) or disabled (unchecked).
  3. The number of times the fact is referenced (hits).
  4. The name of the fact.

The Rules Form

This form displays the rules in a puzzle. Simple puzzles may not have rules. Rules are conditional expressions, and involve programming. Our example puzzle has two rules. If we look at the first rule "Marge wasn't the second of the three women in line.", we would need to look at how the women are placed in line. For example, if Grace was first, and Lisa was last, it would be impossible to place Marge without violating this rule. And if Grace was first and Lisa was fourth, then Marge could not be second or third (she would have to be fifth). You see how this can be a tricky thing.

You can enable/disable a rule by clicking its checkmark. If you want to see how this looks after the solution is found, click here.

The columns in this form are:

  1. The one-based number of the rule.
  2. Whether the rule is enabled (checked) or disabled (unchecked).
  3. The number of times the rule is referenced (hits).
  4. The name of the rule.

I should point out that rules can also enter marks. This type of rule is called a trigger.

The Marks Form

This form displays the marks entered by the program and/or the user. Marks have either a negative or positive verb. Example of a positive mark is "Abe is second". An example of a negative mark is "Abe is not second." Two other ways of viewing the marks are via the Chart and the Grids. You cannot enter a mark via this form, but you can in the Grids form. Here is the form for this puzzle when solved by the Mystery Master.

The columns in this form are:

  1. The one-based number of the mark.
  2. The level number of the mark. Levels are from 1 to 4.
  3. What/Who entered the mark. This is either: 1 = User, 2 = Level, 3 = Law, or 4 = Rule.
  4. The reason for the mark.

The Chart Form

This form displays the positive marks between two nouns, also known as a pair. The column headers are the names of the noun types. The first column determines what you see in this form. For example, if the first column displays the nouns for Order, only the nouns paired with a noun for Order will be seen. When the chart is completely filled, the solution is found. Though you cannot edit the data on this form, you can click a column header to display that column first, while the other columns stay in their original order. If you want to see the solution to this puzzle, click here.

The Grids Form

The Grids form display the marks for each noun1/noun2 combination, where the column for noun 1 is shown before the column for noun 2 in the Nouns form. Do the following to enter a mark.

  1. Click on the Verb button to change the type of mark to enter, either negative or positive.
  2. Click on a cell within the grid displaying the noun1/noun2 combination you want.

If you decide you want to undo a mark you entered, press the Undo button. This will undo the last mark you entered.

Here is the form for this puzzle before any marks have been entered. If you want to see grids after all marks have been entered, click here.

For a puzzle with m noun types, there are 1 + 2 + ... + (m-1) or sum(m-1) unique grids.

The Stats Form

The Stats form displays the statistics of the puzzle while it is being solved. You cannot edit the data on this form. Here is the form after the solution was found.

The columns for this form are:

  1. The one-based number of each Level (1 to 4), with the totals in the last row.
  2. The number of pairs/marks entered by that level.
  3. The number of pairs/marks entered by rules for that level.
  4. The number of pairs/marks entered by Law 1 for that level.
  5. The number of pairs/marks entered by Law 2 for that level.
  6. The number of pairs/marks entered by Law 3 for that level.
  7. The number of pairs/marks entered by Law 4 for that level.
  8. The number of pairs/marks entered by Law 5 for that level.
  9. The total number of pairs/marks entered for that level.

You can see that Level 1 did all of the work, with Law 1 claiming the best numbers.

The Setup Form

The Setup form displays various options for solving a puzzle. You may set any of these options, and the application will remember your choices.

Setup
Pauses
All
Level
Solution
Violation
Mark
Trigger
Guess
Placer
General
Autorun
Rechart
Rules
Triggers


Levels
All
Level 1
Level 2
Level 3
Level 4
Laws
All
Law 1
Law 2
Law 3
Law 4
Law 5

The following is a brief description of each setup option, organized by category.

Pauses
NameDescription
AllPause on all events.
LevelPause when level changes.
SolutionPause when solution is found.
ViolationPause when mark violates fact, rule, or law.
MarkPause when mark is entered.
TriggerPause when mark is entered via rule.
GuessPause when assumption is entered.
PlacerPause when name/title of noun(s) is updated.

General
NameDescription
AutorunSolve the puzzle when it is loaded.
RechartShow mark's first noun type in first column.
RulesAllow rules to be invoked.
TriggersAllow rules to enter marks.
ResetUse default settings.

Levels
NameDescription
All Enable all levels.
Level 1Enable "Examine One Fact At A Time".
Level 2Enable "Examine Two Facts At A Time".
Level 3Enable "Examine All Facts At A Time".
Level 4Enable "Make Assumptions (Guess)".

Laws
NameDescription
All Enable all laws.
Law 1Enable "Law Of Grids".
Law 2Enable "Law Of Transitive Relations".
Law 3Enable "Law Of Disjoint Sets".
Law 4Enable "Law Of Reservations For Two".
Law 5Enable "Law Of Facts".

I hope you have found this article informative. Make sure you read the other articles found on the help page. Thank you for your interest in the Mystery Master application.