Comments (1)
The full stacktrace is below. It does look very similar to #3259.
Exception in thread "AWT-EventQueue-0" de.uka.ilkd.key.util.AssertionFailure:
Assertion failure: Formula Term subterm: [0,0,0,0,0] of update-application(parallel-upd(parallel-upd(parallel-upd(elem-update(heapAtPre)(heap),elem-update(exc)(null)),elem-update(a)(self)),elem-update(a_1)(self<<origin(<none> (implicit)) ([ensures @ file A.java @ line 20, ensures (implicit), assignable (implicit), assignable @ file A.java @ line 21])>>)<<origin(<none> (implicit)) ([ensures @ file A.java @ line 20, ensures (implicit), assignable (implicit), assignable @ file A.java @ line 21])>>)<<origin(<none> (implicit)) ([ensures @ file A.java @ line 20, ensures (implicit), assignable (implicit), assignable @ file A.java @ line 21])>>,\<{
try {
method-frame (source=toProve()@A, this=self) {
{
method-frame (source=inc()@A, this=self) {
int i_2;
i_2 = a.x;
i_1 = i_2 + 1;
i = (int) i_1;
a_1.x = i;
}
}
dec();
}
} catch (java.lang.Throwable e) {
exc = e;
}
}\> (and(and(and(equals(int::select(heapAtPre,self,A::$x),int::select(heap,self,A::$x))<<origin(ensures @ file A.java @ line 20) ([])>>,java.lang.Object::<inv>(heap,self)<<impl>>)<<SC, origin(ensures @ file A.java @ line 20) ([ensures @ file A.java @ line 20])>>,equals(exc<<origin(ensures (implicit)) ([])>>,null)<<impl, origin(ensures (implicit)) ([ensures (implicit)])>>)<<origin(<none> (implicit)) ([ensures @ file A.java @ line 20, ensures (implicit)])>>,all{f:Field}(all{o:java.lang.Object}(or(or(and(equals(o,self<<origin(assignable (implicit)) ([])>>)<<origin(assignable (implicit)) ([assignable (implicit)])>>,equals(f,A::$x)<<origin(assignable (implicit)) ([])>>)<<origin(assignable (implicit)) ([assignable (implicit)])>>,and(not(equals(o,null)<<origin(assignable (implicit)) ([])>>)<<origin(assignable (implicit)) ([assignable (implicit)])>>,not(equals(boolean::select(heapAtPre,o,java.lang.Object::<created>),TRUE)<<origin(assignable (implicit)) ([])>>)<<origin(assignable (implicit)) ([assignable (implicit)])>>)<<origin(assignable (implicit)) ([assignable (implicit)])>>)<<origin(assignable (implicit)) ([assignable (implicit)])>>,equals(any::select(heapAtPre,o,f),any::select(heap,o,f))<<origin(assignable (implicit)) ([])>>)<<origin(assignable (implicit)) ([assignable (implicit)])>>)<<origin(assignable (implicit)) ([assignable (implicit)])>>)<<origin(assignable (implicit)) ([assignable (implicit)])>>)<<origin(<none> (implicit)) ([ensures @ file A.java @ line 20, ensures (implicit), assignable (implicit)])>>)<<origin(<none> (implicit)) ([ensures @ file A.java @ line 20, ensures (implicit), assignable (implicit)])>>)<<origin(<none> (implicit)) ([ensures @ file A.java @ line 20, ensures (implicit), assignable (implicit), assignable @ file A.java @ line 21])>> does not exist
at de.uka.ilkd.key.util.Debug.fail(Debug.java:105)
at de.uka.ilkd.key.strategy.FindTacletAppContainer.<init>(FindTacletAppContainer.java:52)
at de.uka.ilkd.key.strategy.TacletAppContainer.createContainer(TacletAppContainer.java:69)
at de.uka.ilkd.key.strategy.TacletAppContainer.createInitialAppContainers(TacletAppContainer.java:197)
at de.uka.ilkd.key.strategy.RuleAppContainer.createAppContainers(RuleAppContainer.java:116)
at de.uka.ilkd.key.strategy.QueueRuleApplicationManager.rulesAdded(QueueRuleApplicationManager.java:139)
at de.uka.ilkd.key.proof.RuleAppIndex.informNewRuleListener(RuleAppIndex.java:364)
at de.uka.ilkd.key.proof.RuleAppIndex$1.rulesAdded(RuleAppIndex.java:57)
at de.uka.ilkd.key.proof.TermTacletAppIndex.fireRulesAdded(TermTacletAppIndex.java:598)
at de.uka.ilkd.key.proof.TermTacletAppIndex.createHelp(TermTacletAppIndex.java:186)
at de.uka.ilkd.key.proof.TermTacletAppIndex.createSubIndices(TermTacletAppIndex.java:134)
at de.uka.ilkd.key.proof.TermTacletAppIndex.createHelp(TermTacletAppIndex.java:184)
at de.uka.ilkd.key.proof.TermTacletAppIndex.createSubIndices(TermTacletAppIndex.java:134)
at de.uka.ilkd.key.proof.TermTacletAppIndex.createHelp(TermTacletAppIndex.java:184)
at de.uka.ilkd.key.proof.TermTacletAppIndex.createSubIndices(TermTacletAppIndex.java:134)
at de.uka.ilkd.key.proof.TermTacletAppIndex.createHelp(TermTacletAppIndex.java:184)
at de.uka.ilkd.key.proof.TermTacletAppIndex.createSubIndices(TermTacletAppIndex.java:134)
at de.uka.ilkd.key.proof.TermTacletAppIndex.createHelp(TermTacletAppIndex.java:184)
at de.uka.ilkd.key.proof.TermTacletAppIndex.createSubIndices(TermTacletAppIndex.java:134)
at de.uka.ilkd.key.proof.TermTacletAppIndex.createHelp(TermTacletAppIndex.java:184)
at de.uka.ilkd.key.proof.TermTacletAppIndex.create(TermTacletAppIndex.java:156)
at de.uka.ilkd.key.proof.SemisequentTacletAppIndex.addTermIndex(SemisequentTacletAppIndex.java:57)
at de.uka.ilkd.key.proof.SemisequentTacletAppIndex.updateTermIndices(SemisequentTacletAppIndex.java:134)
at de.uka.ilkd.key.proof.SemisequentTacletAppIndex.updateTermIndices(SemisequentTacletAppIndex.java:150)
at de.uka.ilkd.key.proof.SemisequentTacletAppIndex.sequentChanged(SemisequentTacletAppIndex.java:220)
at de.uka.ilkd.key.proof.TacletAppIndex.deltaUpdateIndices(TacletAppIndex.java:178)
at de.uka.ilkd.key.proof.TacletAppIndex.update(TacletAppIndex.java:162)
at de.uka.ilkd.key.proof.TacletAppIndex.getIndex(TacletAppIndex.java:202)
at de.uka.ilkd.key.proof.TacletAppIndex.getFindTaclet(TacletAppIndex.java:302)
at de.uka.ilkd.key.proof.RuleAppIndex.getFindTaclet(RuleAppIndex.java:188)
at de.uka.ilkd.key.control.AbstractProofControl.getFindTaclet(AbstractProofControl.java:133)
at de.uka.ilkd.key.gui.nodeviews.CurrentGoalViewListener.mouseClicked(CurrentGoalViewListener.java:76)
at java.desktop/java.awt.AWTEventMulticaster.mouseClicked(AWTEventMulticaster.java:278)
Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException: Cannot invoke "de.uka.ilkd.key.proof.TermTacletAppIndex.getTacletAppAt(de.uka.ilkd.key.logic.PosInOccurrence, de.uka.ilkd.key.proof.rulefilter.RuleFilter)" because the return value of "de.uka.ilkd.key.proof.SemisequentTacletAppIndex.getTermIndex(de.uka.ilkd.key.logic.PosInOccurrence)" is null
at de.uka.ilkd.key.proof.SemisequentTacletAppIndex.getTacletAppAt(SemisequentTacletAppIndex.java:194)
at de.uka.ilkd.key.proof.TacletAppIndex.getFindTaclet(TacletAppIndex.java:302)
at de.uka.ilkd.key.proof.RuleAppIndex.getFindTaclet(RuleAppIndex.java:188)
at de.uka.ilkd.key.control.AbstractProofControl.getFindTaclet(AbstractProofControl.java:133)
at de.uka.ilkd.key.gui.nodeviews.CurrentGoalViewListener.mouseClicked(CurrentGoalViewListener.java:76)
at java.desktop/java.awt.AWTEventMulticaster.mouseClicked(AWTEventMulticaster.java:278)
from key.
Related Issues (20)
- Taclet option for checking overflows (in Java code) does not work
- Reverse Origin Lookup HOT 1
- Assignable prevents proving the algorithm HOT 7
- Be able to edit the source file in the main interface HOT 1
- Assignable does not work correctly with Boxed types
- Proof independent settings seem to be no longer saved HOT 5
- Proof tree filters not applied correctly HOT 8
- Drag and drop does no longer indicate target formula
- Missing rule for type of array HOT 1
- KeY-BOOK2: Testgen has diverged from book description
- Userdefined \sorts can't be used in .java files
- Function symbols with clashing names are not detected HOT 1
- User-defined sorts cannot be referenced in quantified expressions HOT 1
- Support for JML `TYPE` HOT 4
- Generic sort in problem definition leads to broken sequent
- Do not update proof tree if not visible
- Inifite NullPointerExceptions when proving accessible clause HOT 2
- Improved Taclet Options
- Make the proof tree (or the KeY GUI in general) responsive during automatic proof search
- KeY crashes after initial launch terminates unconventionally HOT 3
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from key.