Skip to content

Conversation

tautschnig
Copy link
Collaborator

We were missing front-end support for reals and did not consistently support all of integers, naturals, rationals, reals but instead would only handle varying subsets in each place.

  • Each commit message has a non-empty body, explaining why the change was made.
  • Methods or procedures I have added are documented, following the guidelines provided in CODING_STANDARD.md.
  • The feature or user visible behaviour I have added or modified has been documented in the User Guide in doc/cprover-manual/
  • Regression or unit tests are included, or existing tests cover the modified code (in this case I have detailed which ones those are in the commit message).
  • n/a My commit message includes data points confirming performance improvements (if claimed).
  • My PR is restricted to a single feature or bugfix.
  • n/a White-space or formatting changes outside the feature-related changed lines are in commits of their own.

@tautschnig tautschnig self-assigned this Jun 11, 2024
@tautschnig tautschnig force-pushed the bugfixes/mathematical-types branch from 34b8cbe to e5a11d2 Compare June 11, 2024 19:53
@tautschnig tautschnig force-pushed the bugfixes/mathematical-types branch from e5a11d2 to 19a8310 Compare September 22, 2025 20:02
@tautschnig tautschnig force-pushed the bugfixes/mathematical-types branch 2 times, most recently from cebcc43 to 9cd88b5 Compare September 23, 2025 15:33
@tautschnig tautschnig force-pushed the bugfixes/mathematical-types branch 3 times, most recently from 5a6f0b8 to 9d13355 Compare September 23, 2025 18:54
@tautschnig tautschnig marked this pull request as ready for review September 23, 2025 19:15
@tautschnig tautschnig assigned kroening and unassigned tautschnig Sep 23, 2025
Copy link

codecov bot commented Sep 23, 2025

Codecov Report

❌ Patch coverage is 54.62555% with 103 lines in your changes missing coverage. Please review.
✅ Project coverage is 80.48%. Comparing base (5f4c82d) to head (3e649e6).
⚠️ Report is 4 commits behind head on develop.

Files with missing lines Patch % Lines
src/solvers/smt2/smt2_conv.cpp 56.98% 40 Missing ⚠️
src/ansi-c/c_typecast.cpp 57.69% 22 Missing ⚠️
src/util/algebraic_number.cpp 21.42% 22 Missing ⚠️
src/util/rational_tools.cpp 57.14% 6 Missing ⚠️
src/util/simplify_expr.cpp 28.57% 5 Missing ⚠️
src/solvers/flattening/boolbv_width.cpp 0.00% 4 Missing ⚠️
src/ansi-c/c_typecheck_type.cpp 75.00% 1 Missing ⚠️
src/util/algebraic_number.h 88.88% 1 Missing ⚠️
src/util/arith_tools.cpp 50.00% 1 Missing ⚠️
src/util/pointer_offset_size.cpp 50.00% 1 Missing ⚠️
Additional details and impacted files
@@             Coverage Diff             @@
##           develop    #8324      +/-   ##
===========================================
+ Coverage    80.43%   80.48%   +0.05%     
===========================================
  Files         1695     1697       +2     
  Lines       208285   208427     +142     
  Branches        73       73              
===========================================
+ Hits        167524   167745     +221     
+ Misses       40761    40682      -79     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@tautschnig tautschnig force-pushed the bugfixes/mathematical-types branch from 9d13355 to fb0495e Compare September 29, 2025 05:14
We were missing front-end support for reals and did not consistently
support all of integers, naturals, rationals, reals but instead would
only handle varying subsets in each place.
@tautschnig tautschnig force-pushed the bugfixes/mathematical-types branch 4 times, most recently from 611573c to dcb2725 Compare October 7, 2025 13:38
src.get_sub().size() == 3 &&
src.get_sub()[0].id() == "root-obj") // (root-obj (+ ...) 1)
{
DATA_INVARIANT_WITH_DIAGNOSTICS(
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't think that a DATA_INVARIANT is the right choice here. This is a property of the output of another tool, which we have very little control over. I'd make this a proper exception.

This representation is used by Z3 for it covers a subset of irrational
numbers in addition to rational numbers.
@tautschnig tautschnig force-pushed the bugfixes/mathematical-types branch from dcb2725 to 3e649e6 Compare October 12, 2025 08:41
@tautschnig tautschnig merged commit 8896f3d into diffblue:develop Oct 12, 2025
38 of 41 checks passed
@tautschnig tautschnig deleted the bugfixes/mathematical-types branch October 12, 2025 09:30
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants