@@ -58,9 +58,8 @@ void report_results(
58
58
json_property[" identifier" ] = json_stringt (id2string (property.name ));
59
59
json_property[" status" ] = json_stringt (property.status_as_string ());
60
60
61
- if (property.has_counterexample ())
62
- json_property[" counterexample" ] =
63
- json (property.counterexample .value (), ns);
61
+ if (property.has_witness_trace ())
62
+ json_property[" trace" ] = json (property.witness_trace .value (), ns);
64
63
65
64
json_properties.push_back (std::move (json_property));
66
65
}
@@ -81,8 +80,8 @@ void report_results(
81
80
xml_result.set_attribute (" property" , id2string (property.name ));
82
81
xml_result.set_attribute (" status" , property.status_as_string ());
83
82
84
- if (property.has_counterexample ())
85
- xml_result.new_element () = xml (property.counterexample .value (), ns);
83
+ if (property.has_witness_trace ())
84
+ xml_result.new_element () = xml (property.witness_trace .value (), ns);
86
85
87
86
std::cout << xml_result << ' \n ' << std::flush;
88
87
}
@@ -109,6 +108,7 @@ void report_results(
109
108
case statust::PROVED: message.status () << messaget::green; break ;
110
109
case statust::PROVED_WITH_BOUND: message.status () << messaget::green; break ;
111
110
case statust::REFUTED: message.status () << messaget::bright_red; break ;
111
+ case statust::REFUTED_WITH_BOUND: message.status () << messaget::bright_red; break ;
112
112
case statust::DROPPED: message.status () << messaget::red; break ;
113
113
case statust::FAILURE: message.status () << messaget::red; break ;
114
114
case statust::UNKNOWN: message.status () << messaget::yellow; break ;
@@ -121,24 +121,28 @@ void report_results(
121
121
122
122
message.status () << messaget::reset << messaget::eom;
123
123
124
- if (property.has_counterexample ())
124
+ if (property.has_witness_trace ())
125
125
{
126
+ auto term = [&property]() {
127
+ return property.is_exists_path () ? " Trace" : " Counterexample" ;
128
+ };
129
+
126
130
if (cmdline.isset (" trace" ))
127
131
{
128
- message.status () << " Counterexample :\n " << messaget::eom;
132
+ message.status () << term () << " :\n " << messaget::eom;
129
133
show_trans_trace (
130
- property.counterexample .value (), message, ns, std::cout);
134
+ property.witness_trace .value (), message, ns, std::cout);
131
135
}
132
136
else if (cmdline.isset (" numbered-trace" ))
133
137
{
134
- message.status () << " Counterexample: \n " << messaget::eom;
138
+ message.status () << term () << " : " << messaget::eom;
135
139
show_trans_trace_numbered (
136
- property.counterexample .value (), message, ns, std::cout);
140
+ property.witness_trace .value (), message, ns, std::cout);
137
141
}
138
142
else if (cmdline.isset (" waveform" ))
139
143
{
140
- message.status () << " Counterexample :" << messaget::eom;
141
- show_waveform (property.counterexample .value (), ns);
144
+ message.status () << term () << " :" << messaget::eom;
145
+ show_waveform (property.witness_trace .value (), ns);
142
146
}
143
147
}
144
148
}
@@ -148,13 +152,13 @@ void report_results(
148
152
{
149
153
for (const auto &property : properties.properties )
150
154
{
151
- if (property.has_counterexample ())
155
+ if (property.has_witness_trace ())
152
156
{
153
157
std::string vcdfile = cmdline.get_value (" vcd" );
154
158
std::ofstream vcd (widen_if_needed (vcdfile));
155
159
156
160
messaget message (message_handler);
157
- show_trans_trace_vcd (property.counterexample .value (), message, ns, vcd);
161
+ show_trans_trace_vcd (property.witness_trace .value (), message, ns, vcd);
158
162
159
163
break ;
160
164
}
0 commit comments