diff --git a/carcara/src/translation/eunoia.rs b/carcara/src/translation/eunoia.rs index fdc1db49..3a1b5ee3 100644 --- a/carcara/src/translation/eunoia.rs +++ b/carcara/src/translation/eunoia.rs @@ -625,18 +625,6 @@ impl EunoiaTranslator { } } - fn translate_proof_arg(&self, proof_arg: &ProofArg) -> EunoiaTerm { - match proof_arg { - // An argument that is just a term. - ProofArg::Term(term) => self.translate_term(term), - - ProofArg::Assign(.., term) => { - // TODO: how should we translate (:= )? - self.translate_term(term) - } - } - } - /// Implements the translation of an Alethe `Assume`, taking into /// account technical differences in the way Alethe rules are /// expressed within Eunoia. @@ -677,7 +665,7 @@ impl EunoiaTranslator { clause: &[Rc], rule: &str, premises: &[Rc], - args: &[ProofArg], + args: &[Rc], discharge: &[Rc], ) { let mut alethe_premises: Vec = Vec::new(); @@ -711,7 +699,7 @@ impl EunoiaTranslator { let mut eunoia_arguments: Vec = Vec::new(); args.iter().for_each(|arg| { - eunoia_arguments.push(self.translate_proof_arg(arg)); + eunoia_arguments.push(self.translate_term(arg)); }); // TODO: develop some generic programmatic way to deal with each rule's @@ -877,7 +865,9 @@ impl EunoiaTranslator { // TODO: make eunoia_prelude an attribute of EunoiaTranslator /// Translates only an SMT-lib problem prelude. - pub fn translate_problem_prelude(&self, prelude: &ProblemPrelude) -> EunoiaProof { + pub fn translate_problem_prelude(&self, problem: &Problem) -> EunoiaProof { + let Problem { prelude, .. } = problem; + let ProblemPrelude { sort_declarations, function_declarations, diff --git a/carcara/src/translation/tests/test_translate.rs b/carcara/src/translation/tests/test_translate.rs index 05f75705..dbbdea85 100644 --- a/carcara/src/translation/tests/test_translate.rs +++ b/carcara/src/translation/tests/test_translate.rs @@ -17,6 +17,7 @@ const TEST_CONFIG: Config = Config { expand_lets: false, allow_int_real_subtyping: false, strict: false, + parse_hole_args: false, }; #[test]