The logic rules you use to assemble an eXvisory deep logic network are deliberately constrained to a palette of as few different rule types as possible (5) with as simple internal logic as possible - optimised for the problem at hand (fault diagnosis by a process of elimination). To build a complex troubleshooter you combine these simple rules into repetitive structures (the fault containment hierarchy). There will always be a temptation to add more expressivity to the logic rule palette, but as rules become more expressive they become more complicated, and combine in more complicated ways - and combinatorial complexity is the bane of building scalable and maintainable logic AIs.