Perhaps there is a very different way to address this. Assume a projection of the sensed pattern onto a field of topographically arranged neuron proximal connections. I am open to a variety of activation rules, sparsity operations with inhibitory cells, columns - both major & minor, and some Hebbian local learning. The cells sense matches and predict sensed patterns.
Assume that there are projections to a “thalamus” layer with rather diffuse connections. Just like there is in the human brain.
If the thalamus was receiving projections from a given topographical area that is the same as the integration of the overall level of match of an area. The thalamus feedback to the cell could be tonic AND the area of activation of the thalamus would be a map of sensed matching activity. I could see this being used as part of a training schedule.
This activation map could be relayed to gate activation of adjacent maps to attempt a link to a related dimension mapping. If a pattern in the two gated areas resonated in the activated related map these should be some level of mapping between two stored patterns. Learning in both of the maps would strengthen links between these two sparse patterns.
The sweetness here is that more than one pattern could be active at a time. I suspect you can prove that if you have a spatial coding (like topographically organized maps) unrelated activation areas are orthogonal and spatially separated by definition.
I saw no provisions for using the reciprocal loops to structures that are known to be connected to the cortex but perhaps this should be part of the HTM canon. This is, after all, supposed to be based on modeling the human brain.
It’s not hard to extend this to any of the huge numbers of connections that are currently described with a cortico-XYZ (you pick the area) word.
I have a viewpoint that you may find interesting: “making a probe SDR” is useful from a tinkerer’s point of view but from a system point of view a stream of tokens in a functioning system must be compatible. I would think that this begs the requirement for both an encode/decode stream(s) to be considered in any system design. (debugging and all that) If I am going to use it to process images then I must have some sort of coding and access methods worked out as a viable answer. The desired answer drives framing the question.
To “engineery?”