Require supertight programs for backward proof

This commit is contained in:
2020-05-28 04:54:42 +02:00
parent 9b7895a032
commit 491a255811
8 changed files with 226 additions and 98 deletions

View File

@@ -135,7 +135,7 @@ impl<'p> Translator<'p>
}
};
for predicate_declaration in self.problem.predicate_declarations.borrow().iter()
for predicate_declaration in self.problem.predicate_declarations.borrow_mut().iter()
{
// Dont perform completion for input predicates and built-in predicates
if *predicate_declaration.is_input.borrow() || predicate_declaration.is_built_in()
@@ -149,6 +149,9 @@ impl<'p> Translator<'p>
let completed_definition = completed_definition(predicate_declaration,
&mut self.definitions);
*predicate_declaration.dependencies.borrow_mut() =
Some(crate::collect_predicate_declarations(&completed_definition));
let statement_name =
format!("completed_definition_{}", predicate_declaration.tptp_statement_name());