Issue Importing .proof Files in KeY: "Could Not Resolve BigInteger.ONE" #3545
Unanswered
JDavidCE2022
asked this question in
Q&A
Replies: 1 comment 2 replies
-
For me, it seems that ordinal numbers require a special version of KeY linked on the web page, based on KeY 2.4, but it seems you use the current release version of KeY (i.e. 2.12.3). Your error corresponds to the fact that our BigInteger class class misses the @mattulbrich In the old KeY repo, there is the branch |
Beta Was this translation helpful? Give feedback.
2 replies
# for free
to join this conversation on GitHub.
Already have an account?
# to comment
-
Hello. I am trying to import .proof files from Peter H. Schmitt's Ordinal Numbers implementation in KeY. However, every time I load a proof file, I get the following error:
Could not resolve UncollatedReferenceQualifier "BigInteger.ONE" @8/24 in "FILE:C:\Users\jes\Downloads\.\GoodsteinBig.java" (11) Consider using a classpath in your input file if this is a classtype that cannot be resolved (see https://keyproject.github.io/key-docs/user/Classpath for more details). Caused by: recoder.service.UnresolvedReferenceException: Could not resolve UncollatedReferenceQualifier "BigInteger.ONE" @8/24 in "FILE:C:\Users\jes\Downloads\.\GoodsteinBig.java" (11)
This issue occurs regardless of the Java version or KeY version I use.
Setup and Attempts
KeY Versions Tried:
Java Versions Tried:
Results: In all cases, the error remains the same (BigInteger.ONE cannot be resolved).
Context
The files I am using come from the Ordinal Numbers project by Peter H. Schmitt, which includes:
GoodsteinBig.java
(which computes Goodstein sequences using BigInteger)Goodstein.java
(which is analyzed in the paper).proof
andkey
files for correctness proofsAccording to the project documentation, the
.proof
files should be loadable into KeY via File → Load Proof. However, KeY fails to resolveBigInteger.ONE
.Steps I Have Taken to Fix the Issue
Set the classpath manually in a
.key
file, adding:\bootclasspath "C:\Program Files\Eclipse Adoptium\jdk-17.0.14+7\lib"; \classpath "C:\Program Files\Eclipse Adoptium\jdk-17.0.14+7\modules\java.base"; \javaSource "GoodsteinBig.java";
No effect; the error persists.
Ran KeY with a custom classpath using commands like:
java -classpath "C:\Program Files\Eclipse Adoptium\jdk-17.0.14+7\modules\java.base" -jar key-2.12.3-exe.jar
Still fails to resolve BigInteger.ONE.
Used fully qualified names (e.g.,
java.math.BigInteger.ONE
) inGoodsteinBig.java
. No effect.Tested different JDK versions. The error remains in every case.
Request for Help
I suspect this might be an issue with:
.proof
file structure in this particular projectCould anyone familiar with KeY’s classpath system or proof imports suggest what might be going wrong?
Is there a specific way to ensure Java standard libraries are properly recognized in KeY?
Thanks in advance for any help!
Beta Was this translation helpful? Give feedback.
All reactions