pub fn compile(&mut self, program: DslIrProgram<C>) -> RecursionProgram<C::F> {
        // SAFETY: The compiler produces well-formed programs given a well-formed DSL input.
        // This is also a cryptographic requirement.
        unsafe { RecursionProgram::new_unchecked(self.compile_inner(program.into_inner())) }
    }
Compile a `DslIrProgram` that is definitionally assumed to be well-formed.

Returns a well-formed program.
crates/recursion/compiler/src/circuit/compiler.rs