neuralqx.experimental.operators.symbolic.compiler.lowering package¶
Symbolic compiler lowering backends.
- class AbstractSymbolicLowerer¶
Bases:
ABCAbstract base for backend-specific symbolic operator lowerers.
A lowerer converts a compiled symbolic IR (held in a
SymbolicCompilationContext) into an executableComputationalJaxOperatorsubclass packaged inside aSymbolicCompiledArtifact.The compiler picks the lowerer via
supports(), then callslower().- Subclasses must implement:
name- unique lowerer identifier (used in artifact tagging).backend- target backend name (e.g."jax").supports()- returnsTruewhen this lowerer can handle the given context.lower()- performs the actual compilation.
- class SymbolicLowererRegistry(lowerers=None)¶
Bases:
objectRegistry that maps compilation contexts to concrete lowerers.
Lowerers are registered in priority order (first registered = highest priority). When
resolve()is called, it returns the first lowerer whosesupports()predicate returnsTruefor the given context.- Parameters:
lowerers (
list[AbstractSymbolicLowerer] |None) – Initial ordered lowerer sequence (highest priority first).
- class JAXSymbolicLowerer¶
Bases:
AbstractSymbolicLowererJAX-backend symbolic operator lowerer.