@@ -518,22 +518,25 @@ bool LratMerger::WriteInferredClause(
518518 return LratError ();
519519 }
520520 }
521- merged_proof_file_ << inferred_clause.clause_id ();
521+ std::string& clause_str = tmp_clause_str_;
522+ clause_str.clear ();
523+ absl::StrAppend (&clause_str, inferred_clause.clause_id ());
522524 for (const int lit : inferred_clause.literals ()) {
523- merged_proof_file_ << " " << Literal (LiteralIndex (lit)).SignedValue ();
525+ absl::StrAppend (&clause_str, " " , Literal (LiteralIndex (lit)).SignedValue () );
524526 }
525- merged_proof_file_ << " 0" ;
527+ absl::StrAppend (&clause_str, " 0" ) ;
526528 for (const int rup_clause_id : inferred_clause.rup_clause_ids ()) {
527- merged_proof_file_ << " " << rup_clause_id;
529+ absl::StrAppend (&clause_str, " " , rup_clause_id) ;
528530 }
529531 for (const LratInferredClause::RatInfo& rat_info :
530532 inferred_clause.rat_infos ()) {
531- merged_proof_file_ << " " << -rat_info.resolvant_id ();
533+ absl::StrAppend (&clause_str, " " , -rat_info.resolvant_id () );
532534 for (const int rup_clause_id : rat_info.rup_clause_ids ()) {
533- merged_proof_file_ << " " << rup_clause_id;
535+ absl::StrAppend (&clause_str, " " , rup_clause_id) ;
534536 }
535537 }
536- merged_proof_file_ << " 0\n " ;
538+ absl::StrAppend (&clause_str, " 0\n " );
539+ merged_proof_file_ << clause_str;
537540 last_written_global_id_ = GlobalId (inferred_clause.clause_id ());
538541 return true ;
539542}
0 commit comments