I have two relations, requirement and suggestion, and I want Inform to be able to calculate another relation via steps taking through either. Here is my code:
[code]A whatsit is a kind of thing.
Requirement relates various whatsits to various whatsits.
The verb to require (it requires, they require, it required, it is required, it is requiring) implies the requirement relation.
Suggestion relates various whatsits to various whatsits.
The verb to suggest (it suggests, they suggest, it suggested, it is suggested, it is suggesting) implies the suggestion relation.[/code]
I want a transitive relation for these. I know I can do:
Indirect-requirement relates various themes to various themes.
The verb to i-require (it i-requires, they i-require, it i-required, it is i-required, it is i-requiring) implies the indirect-requirement relation.
and similarly for suggestion. But if I have the set-up:
A1, A2, A3, B1, B2, and B3 are whatsits.
A1 requires A2. A2 requires A3.
A3 suggests B1.
B1 suggests B2. B2 suggests B3.
and I want Inform to recognize the connection between A1 and B3 (that is, A1 => A2 => A3 by requirement and then A3 => B1 => B2 => B3 by suggestion), how can I do that?
I have tried the following which does not work:
Connection relates a whatsit (called A) to a whatsit (called B) when the number of steps via the requirement relation from A to B > 0 or the number of steps via the suggestion relation from A to B > 0.