@@ -274,6 +274,8 @@ def print_statements(
274274 .block { background-color: #fff; border: 1px solid #ddd; padding: 15px; margin-bottom: 20px; border-radius: 5px; }
275275 .block h2 { margin-top: 0; font-size: 1.2em; color: #333; }
276276 .block p { margin: 5px 0; color: #555; }
277+ .holds { background-color: #d4edda; border-color: #c3e6cb; }
278+ .not-hold { background-color: #f8d7da; border-color: #f5c6cb; }
277279 .label { font-weight: bold; }
278280 .block code {
279281 background-color: #f4f4f4;
@@ -288,7 +290,6 @@ def print_statements(
288290 </style>
289291 </head>
290292 <body>
291- <h1> Extracted statements </h1>
292293 """ )
293294
294295 # Cost Functions Rendering
@@ -317,7 +318,7 @@ def print_statements(
317318 val = cost_stmt .validation or cost_val
318319 if val .satisfiable is not None and val .message is not None :
319320 html_parts .append (f'<p><span class="label">Satisfiable:</span> { val .satisfiable } </p>' )
320- html_parts .append (f" <p>{ val .message } </p>" )
321+ html_parts .append (f' <p><span class="label">Reason:</span> { val .message } </p>' )
321322 html_parts .append ("</div>" )
322323
323324 # Parameter Constraints Rendering
@@ -326,8 +327,9 @@ def print_statements(
326327 ):
327328 if (param_stmt .formalization is None or param_stmt .formalization .mapping is None ) and only_formalized :
328329 continue
329-
330- html_parts .append ('<div class="block">' )
330+ val = param_stmt .validation or param_val
331+ holds_tag = "holds" if val .holds else "not-hold"
332+ html_parts .append (f'<div class="block { holds_tag } ">' )
331333 html_parts .append (f"<h2>{ param_stmt .type } </h2>" )
332334 html_parts .append (f'<p><span class="label">Statement:</span> { param_stmt .text } </p>' )
333335 html_parts .append ('<p><span class="label">Formalization:</span> ' )
@@ -345,10 +347,10 @@ def print_statements(
345347 code = code .replace (var_name , f"{ computation .name } ({ args_str } )" )
346348 html_parts .append (f"<code>{ code } </code>" )
347349 html_parts .append ("</p>" )
348- val = param_stmt .validation or param_val
349350 if val .satisfiable is not None and val .message is not None and val .holds is not None :
350351 html_parts .append (f'<p><span class="label">Satisfiable:</span> { val .satisfiable } </p>' )
351- html_parts .append (f'<p><span class="label">Holds:</span> { val .holds } ({ val .message } )</p>' )
352+ html_parts .append (f'<p><span class="label">Holds:</span> { val .holds } </p>' )
353+ html_parts .append (f'<p><span class="label">Reason:</span> { val .message } </p>' )
352354 html_parts .append ("</div>" )
353355
354356 # Structure Constraints Rendering
@@ -358,9 +360,10 @@ def print_statements(
358360 if struct_stmt .formalization is None and only_formalized :
359361 continue
360362
361- html_parts .append ('<div class="block">' )
363+ holds_tag = "holds" if struct_val .holds else "not-hold"
364+ html_parts .append (f'<div class="block { holds_tag } ">' )
362365 html_parts .append (f"<h2>Type: { struct_stmt .type } </h2>" )
363- html_parts .append (f'<p><span class="label">Statement:</span> { struct_stmt .text } </p>' )
366+ html_parts .append (f'<p><span class="label ">Statement:</span> { struct_stmt .text } </p>' )
364367 html_parts .append ('<p><span class="label">Formalization:</span> ' )
365368 if struct_stmt .formalization is None :
366369 html_parts .append ("UNFORMALIZED" )
@@ -382,7 +385,7 @@ def print_statements(
382385 # Unformalizable Statements Rendering (if applicable)
383386 if not only_formalized :
384387 for unf_stmt in statements .unformalizable_statements or []:
385- html_parts .append ('<div class="block">' )
388+ html_parts .append ('<div class="block not-hold ">' )
386389 html_parts .append (f"<h2>Type: { unf_stmt .type } </h2>" )
387390 html_parts .append (f'<p><span class="label">Statement:</span> { unf_stmt .text } </p>' )
388391 html_parts .append ('<p><span class="label">Formalization:</span> UNFORMALIZABLE</p>' )
@@ -398,7 +401,6 @@ def print_statements(
398401 from IPython .display import display , HTML # type: ignore
399402
400403 display (HTML (final_html ))
401-
402404 else :
403405 print ("-----------------------------------\n " )
404406 for cost_stmt , cost_val in zip (statements .cost_functions or [], validation .cost_functions or []):
0 commit comments