You claim that my strong AI design wouldn't be able to handle cause-effect relations. But the whole memory structure was designed exactly for the purpose of finding these cause-effect relations.
Originally I put into main memory design two types of relations:
1) Cause-effect relations.
2) Parent-child relations.
But later on I decided that system would be simpler and still work efficiently if I keep only one type of relations between concepts: cause-effect relations.
Back to current design
Strong AI design assumes that the main memory would keep millions of concepts connected by hundreds of millions cause-effect relations.
With such memory it would be easy to find the cause(s) for any specified effect(s).
It's also easy to find the effect(s) for any specified cause(s).
You next question probably would be: "how can we put all these millions of cause-effect relations into the main memory?".
One word answer would be: "Learning".
Short answer would be: "Read experiment and/or event correlation analyzer articles".
If you don't have time to read "Learning", "Experiment", and "Event Correlation Analyzer" read at least this simplified example:
AI sends message: "Hi, dude".
AI receives message: "Hello".
Event correlation analyzer adds cause-effect relations between concepts "Hi, dude" and "Hello".
You can find full version of this example on experiment page.