Hacktoberfest 2026: những issue maintainer đã đánh dấu cho tháng Mười, đang mở và phù hợp người mới. Xem issue Hacktoberfest

Show counterexample values in the final expected refinement

Đang mở
#296 0 bình luận 0 reaction 0 người được giao Xem trên GitHub

Chưa có ai nhận issue này.

Đánh giá

Độ khó
4/5
Thời gian dự kiến
3-5 ngày
Mức phù hợp với người mới
55/100
Loại issue
Tính năng
Độ rõ ràng
Khá rõ ràng
Mức độ hoạt động
Sôi nổi
Công nghệ
java
Lĩnh vực
compilers

Hướng nghiên cứu

Start at the refinement-error diagnostic and trace the final expected predicate used for verification through alias and state expansion and simplification. Add tests covering multiple assignments, repeated variables, aliases, and values that cannot be represented safely. Done means the original refinement and assignments remain, while the final predicate shows substituted values without reducing the informative expression.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Mô tả

A refinement error currently shows the original expected refinement and counterexample assignments separately. Include a readable version of the final expected predicate used for verification, after alias and state expansion and any applicable simplification, with every available counterexample value substituted.

For example:

Original expected: Positive(buffered)
Final expected:    buffered > 0
Counterexample:    buffered == 0
With witness:      0 > 0  ✗

Substitute using expression variable identities, without hardcoded alias names or text replacement. Keep the informative expression (0 > 0) rather than reducing it to false. Preserve the original expected refinement and assignments; leave values unchanged when they cannot be represented safely. Cover multiple assignments, repeated variables, and aliases in tests.

Related to #295, which covers navigating alias expansion in the diagnostic history.

Ngôn ngữ chính
Java
Star
67
Fork
36
Merge trung bình
7 ngày 48 phút
Pull request đã merge (30 ngày)
2

Chuẩn bị môi trường

Bắt đầu từ đâu

  1. Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
  2. Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
  3. Fork repository và làm thay đổi trên một nhánh.
  4. Mở pull request có tham chiếu số hiệu của issue.

Issue khác của liquid-java/liquidjava

Tất cả issue của liquid-java/liquidjava

Issue tương tự

Thêm issue về Java

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.