Enumerating patterns

Followup to: Restoring the structure, Patterns of structure.

Patterns offer a limited perspective on structure of the scene, as supported on structure waves. From this perspective, scene can be considered a huge hierarchy of patterns, with the most rare patterns at the root, identifying the scene as a whole, and more and more frequent patterns placed towards the leaves of that tree, identifying objects, then their properties and relations, and finally the most basic features like color.

Let the root of a pattern be a minimal subgraph whose closure is equal to closure of that pattern. Hierarchy of patterns is stored in a reduced form, with groups of isomorphic subtrees collapsed, to be instantiated as needed. In this reduced form, scene can be seen as represented by a directed acyclic graph, with edges identifying which patterns instantiate which other patterns through interfaces, and nodes corresponding to roots of individual patterns (small groups of maps). Like a reduced binary decision diagram, this representation offers the potential to represent huge trees by relatively small graphs, and in the same way representation is never explicitly unpacked to perform operations on it. Every element of the scene can act as a window in a potentially bottomless well of contextually evoked detail, without proportionally cluttering the representation, especially considering that reachability is not limited to patterns included in the scene, but extends to all known patterns. Patterns show this side of wave-based representation, but the resulting picture is also significantly distorted for the reasons to be explained in this and the following posts.

The purpose of structure waves is not to explicate structure, but to visit various structural contexts, seeking opportunities to introduce new details in the scene. Structural contexts are local, and the only reasons global structure of the scene plays role in the order they get enumerated is that many structural contexts of the scene can only be restored in the context of surrounding structure, and that nearby structural contexts overlap, so changes to one context are also changes to neighboring contexts.

Thus, there is no reason for structure waves to reliably follow long paths in the scene, to proceed through many levels of instantiation in one pass. Structure wave only remembers its wave front, the structural contexts it’s currently visiting. Anything that doesn’t fit there gets forgotten, including the origin of the wave. Wave that starts at the root of global hierarchy of the scene and after several levels of instantiation finds itself inside a certain pattern, is equivalent to a wave that originated in that same pattern. The difference existed a step earlier, when the wave from outside was entering the pattern, keeping in its wave-front both instantiation point and part of the target pattern. At this point, wave can bring instance-specific changes to the pattern. Waves within a pattern solidify its structure, ignoring instance-specific variation, regarding pattern as a class rather than instance.

Related subtlety is that patterns themselves are also implicit. A slight variation in instantiation point (in the structural context at the wave front exiting the interface) may lead to assembly of a different pattern. This different pattern may be composed from mostly the same maps, but it will bear the trace of context in which it was instantiated, and so it won’t be identical to other patterns instantiated at similar interfaces, and it won’t self-assemble from within itself in this same form, without being found by a wave from outside. Along the trace, these differences retain the context of pattern roots that isn’t otherwise visible in the structural contexts of wave front. Structure waves starting from within those patterns don’t reconstruct the whole zoo, but focus on the common properties (choice between details otherwise brought by context from instantiation points being ambiguous). The reduced hierarchy, as discussed above, is based on the self-reconstructing patterns, but dynamic of structure waves running on it represents a more refined picture than one that can be produced by simply linking patterns from the hierarchy together.

Leave a Reply