./Ultimate.py --spec ../sv-benchmarks/c/properties/unreach-call.prp --file ../sv-benchmarks/c/float-benchs/filter2_reinit.c --full-output --architecture 32bit -------------------------------------------------------------------------------- Checking for ERROR reachability Using default analysis Version c00e63dc Calling Ultimate with: /root/.sdkman/candidates/java/21.0.5-tem/bin/java -Dosgi.configuration.area=/storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/config -Xmx15G -Xms4m -jar /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/plugins/org.eclipse.equinox.launcher_1.6.800.v20240513-1750.jar -data @noDefault -ultimatedata /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data -tc /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/config/AutomizerReach.xml -i ../sv-benchmarks/c/float-benchs/filter2_reinit.c -s /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Default.epf --cacsl2boogietranslator.entry.function main --witnessprinter.witness.directory /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux --witnessprinter.witness.filename witness --witnessprinter.write.witness.besides.input.file false --witnessprinter.graph.data.specification CHECK( init(main()), LTL(G ! call(reach_error())) ) --witnessprinter.graph.data.producer Automizer --witnessprinter.graph.data.architecture 32bit --witnessprinter.graph.data.programhash 77348271d6b3efbe553fb980482d4643f648de35ae877e068f35f88b7419ce44 --- Real Ultimate output --- This is Ultimate 0.3.0-?-c00e63d-m [2025-02-05 12:43:22,408 INFO L188 SettingsManager]: Resetting all preferences to default values... [2025-02-05 12:43:22,447 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Default.epf [2025-02-05 12:43:22,452 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2025-02-05 12:43:22,453 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2025-02-05 12:43:22,469 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2025-02-05 12:43:22,470 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2025-02-05 12:43:22,470 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2025-02-05 12:43:22,470 INFO L151 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2025-02-05 12:43:22,470 INFO L153 SettingsManager]: * Use memory slicer=true [2025-02-05 12:43:22,470 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2025-02-05 12:43:22,471 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2025-02-05 12:43:22,471 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2025-02-05 12:43:22,471 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2025-02-05 12:43:22,471 INFO L153 SettingsManager]: * Use SBE=true [2025-02-05 12:43:22,471 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2025-02-05 12:43:22,471 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2025-02-05 12:43:22,471 INFO L153 SettingsManager]: * sizeof long=4 [2025-02-05 12:43:22,471 INFO L153 SettingsManager]: * Overapproximate operations on floating types=true [2025-02-05 12:43:22,471 INFO L153 SettingsManager]: * sizeof POINTER=4 [2025-02-05 12:43:22,472 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2025-02-05 12:43:22,472 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2025-02-05 12:43:22,472 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2025-02-05 12:43:22,472 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2025-02-05 12:43:22,472 INFO L153 SettingsManager]: * sizeof long double=12 [2025-02-05 12:43:22,472 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2025-02-05 12:43:22,472 INFO L153 SettingsManager]: * Behaviour of calls to undefined functions=OVERAPPROXIMATE_BEHAVIOUR [2025-02-05 12:43:22,472 INFO L153 SettingsManager]: * Use constant arrays=true [2025-02-05 12:43:22,472 INFO L151 SettingsManager]: Preferences of IcfgBuilder differ from their defaults: [2025-02-05 12:43:22,472 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2025-02-05 12:43:22,472 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2025-02-05 12:43:22,473 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2025-02-05 12:43:22,473 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-02-05 12:43:22,473 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2025-02-05 12:43:22,473 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2025-02-05 12:43:22,473 INFO L153 SettingsManager]: * Compute procedure contracts=false [2025-02-05 12:43:22,473 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2025-02-05 12:43:22,473 INFO L153 SettingsManager]: * Trace refinement strategy=CAMEL [2025-02-05 12:43:22,473 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2025-02-05 12:43:22,473 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2025-02-05 12:43:22,473 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2025-02-05 12:43:22,473 INFO L153 SettingsManager]: * Order on configurations for Petri net unfoldings=DBO [2025-02-05 12:43:22,474 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2025-02-05 12:43:22,474 INFO L153 SettingsManager]: * Looper check in Petri net analysis=SEMANTIC Applying setting for plugin de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator: Entry function -> main Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Witness directory -> /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Witness filename -> witness Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Write witness besides input file -> false Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data specification -> CHECK( init(main()), LTL(G ! call(reach_error())) ) Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data producer -> Automizer Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data architecture -> 32bit Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data programhash -> 77348271d6b3efbe553fb980482d4643f648de35ae877e068f35f88b7419ce44 [2025-02-05 12:43:22,685 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2025-02-05 12:43:22,694 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2025-02-05 12:43:22,696 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2025-02-05 12:43:22,697 INFO L270 PluginConnector]: Initializing CDTParser... [2025-02-05 12:43:22,697 INFO L274 PluginConnector]: CDTParser initialized [2025-02-05 12:43:22,698 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/float-benchs/filter2_reinit.c [2025-02-05 12:43:23,859 INFO L533 CDTParser]: Created temporary CDT project at /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/a82a2b587/79d3082c6d0e400cbe78524fc8e60f5b/FLAG37b671a05 [2025-02-05 12:43:24,074 INFO L384 CDTParser]: Found 1 translation units. [2025-02-05 12:43:24,075 INFO L180 CDTParser]: Scanning /storage/repos/ultimate-jdk21/releaseScripts/default/sv-benchmarks/c/float-benchs/filter2_reinit.c [2025-02-05 12:43:24,085 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/a82a2b587/79d3082c6d0e400cbe78524fc8e60f5b/FLAG37b671a05 [2025-02-05 12:43:24,120 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/a82a2b587/79d3082c6d0e400cbe78524fc8e60f5b [2025-02-05 12:43:24,123 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2025-02-05 12:43:24,124 INFO L133 ToolchainWalker]: Walking toolchain with 6 elements. [2025-02-05 12:43:24,125 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2025-02-05 12:43:24,126 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2025-02-05 12:43:24,129 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2025-02-05 12:43:24,129 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 05.02 12:43:24" (1/1) ... [2025-02-05 12:43:24,130 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@72421b1a and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 05.02 12:43:24, skipping insertion in model container [2025-02-05 12:43:24,130 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 05.02 12:43:24" (1/1) ... [2025-02-05 12:43:24,142 INFO L175 MainTranslator]: Built tables and reachable declarations [2025-02-05 12:43:24,240 WARN L250 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate-jdk21/releaseScripts/default/sv-benchmarks/c/float-benchs/filter2_reinit.c[700,713] [2025-02-05 12:43:24,254 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-02-05 12:43:24,260 INFO L200 MainTranslator]: Completed pre-run [2025-02-05 12:43:24,268 WARN L250 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate-jdk21/releaseScripts/default/sv-benchmarks/c/float-benchs/filter2_reinit.c[700,713] [2025-02-05 12:43:24,272 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-02-05 12:43:24,282 INFO L204 MainTranslator]: Completed translation [2025-02-05 12:43:24,282 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 05.02 12:43:24 WrapperNode [2025-02-05 12:43:24,282 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2025-02-05 12:43:24,283 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2025-02-05 12:43:24,283 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2025-02-05 12:43:24,283 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2025-02-05 12:43:24,287 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 05.02 12:43:24" (1/1) ... [2025-02-05 12:43:24,291 INFO L184 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 05.02 12:43:24" (1/1) ... [2025-02-05 12:43:24,299 INFO L138 Inliner]: procedures = 15, calls = 11, calls flagged for inlining = 3, calls inlined = 3, statements flattened = 58 [2025-02-05 12:43:24,299 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2025-02-05 12:43:24,299 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2025-02-05 12:43:24,300 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2025-02-05 12:43:24,300 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2025-02-05 12:43:24,304 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 05.02 12:43:24" (1/1) ... [2025-02-05 12:43:24,304 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 05.02 12:43:24" (1/1) ... [2025-02-05 12:43:24,305 INFO L184 PluginConnector]: Executing the observer MemorySlicer from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 05.02 12:43:24" (1/1) ... [2025-02-05 12:43:24,312 INFO L175 MemorySlicer]: Split 2 memory accesses to 1 slices as follows [2]. 100 percent of accesses are in the largest equivalence class. The 2 initializations are split as follows [2]. The 0 writes are split as follows [0]. [2025-02-05 12:43:24,312 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 05.02 12:43:24" (1/1) ... [2025-02-05 12:43:24,312 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 05.02 12:43:24" (1/1) ... [2025-02-05 12:43:24,314 INFO L184 PluginConnector]: Executing the observer ReplaceArrayAssignments from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 05.02 12:43:24" (1/1) ... [2025-02-05 12:43:24,315 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 05.02 12:43:24" (1/1) ... [2025-02-05 12:43:24,315 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 05.02 12:43:24" (1/1) ... [2025-02-05 12:43:24,316 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 05.02 12:43:24" (1/1) ... [2025-02-05 12:43:24,316 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2025-02-05 12:43:24,317 INFO L112 PluginConnector]: ------------------------IcfgBuilder---------------------------- [2025-02-05 12:43:24,317 INFO L270 PluginConnector]: Initializing IcfgBuilder... [2025-02-05 12:43:24,317 INFO L274 PluginConnector]: IcfgBuilder initialized [2025-02-05 12:43:24,318 INFO L184 PluginConnector]: Executing the observer IcfgBuilderObserver from plugin IcfgBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 05.02 12:43:24" (1/1) ... [2025-02-05 12:43:24,321 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-02-05 12:43:24,329 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-05 12:43:24,338 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 (exit command is (exit), workingDir is null) [2025-02-05 12:43:24,340 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 (1)] Waiting until timeout for monitored process [2025-02-05 12:43:24,354 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2025-02-05 12:43:24,355 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2025-02-05 12:43:24,355 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2025-02-05 12:43:24,355 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#0 [2025-02-05 12:43:24,355 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2025-02-05 12:43:24,355 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2025-02-05 12:43:24,408 INFO L257 CfgBuilder]: Building ICFG [2025-02-05 12:43:24,414 INFO L287 CfgBuilder]: Building CFG for each procedure with an implementation [2025-02-05 12:43:24,502 INFO L? ?]: Removed 10 outVars from TransFormulas that were not future-live. [2025-02-05 12:43:24,503 INFO L308 CfgBuilder]: Performing block encoding [2025-02-05 12:43:24,509 INFO L332 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2025-02-05 12:43:24,510 INFO L337 CfgBuilder]: Removed 0 assume(true) statements. [2025-02-05 12:43:24,510 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 05.02 12:43:24 BoogieIcfgContainer [2025-02-05 12:43:24,510 INFO L131 PluginConnector]: ------------------------ END IcfgBuilder---------------------------- [2025-02-05 12:43:24,512 INFO L112 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2025-02-05 12:43:24,512 INFO L270 PluginConnector]: Initializing TraceAbstraction... [2025-02-05 12:43:24,515 INFO L274 PluginConnector]: TraceAbstraction initialized [2025-02-05 12:43:24,516 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 05.02 12:43:24" (1/3) ... [2025-02-05 12:43:24,517 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@23f73f37 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 05.02 12:43:24, skipping insertion in model container [2025-02-05 12:43:24,517 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 05.02 12:43:24" (2/3) ... [2025-02-05 12:43:24,517 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@23f73f37 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 05.02 12:43:24, skipping insertion in model container [2025-02-05 12:43:24,518 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 05.02 12:43:24" (3/3) ... [2025-02-05 12:43:24,518 INFO L128 eAbstractionObserver]: Analyzing ICFG filter2_reinit.c [2025-02-05 12:43:24,529 INFO L216 ceAbstractionStarter]: Automizer settings: Hoare:LoopHeads NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2025-02-05 12:43:24,530 INFO L151 ceAbstractionStarter]: Applying trace abstraction to ICFG filter2_reinit.c that has 2 procedures, 21 locations, 1 initial locations, 1 loop locations, and 1 error locations. [2025-02-05 12:43:24,567 INFO L332 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2025-02-05 12:43:24,574 INFO L333 AbstractCegarLoop]: Settings: SEPARATE_VIOLATION_CHECK=true, mInterprocedural=true, mMaxIterations=1000000, mWatchIteration=1000000, mArtifact=RCFG, mInterpolation=FPandBP, mInterpolantAutomaton=STRAIGHT_LINE, mDumpAutomata=false, mAutomataFormat=ATS_NUMERATE, mDumpPath=., mDeterminiation=PREDICATE_ABSTRACTION, mMinimize=MINIMIZE_SEVPA, mAutomataTypeConcurrency=PETRI_NET, mHoareTripleChecks=INCREMENTAL, mHoareAnnotationPositions=LoopHeads, mDumpOnlyReuseAutomata=false, mLimitTraceHistogram=0, mErrorLocTimeLimit=0, mLimitPathProgramCount=0, mCollectInterpolantStatistics=true, mHeuristicEmptinessCheck=false, mHeuristicEmptinessCheckAStarHeuristic=ZERO, mHeuristicEmptinessCheckAStarHeuristicRandomSeed=1337, mHeuristicEmptinessCheckSmtFeatureScoringMethod=DAGSIZE, mSMTFeatureExtraction=false, mSMTFeatureExtractionDumpPath=., mOverrideInterpolantAutomaton=false, mMcrInterpolantMethod=WP, mPorIndependenceSettings=[Lde.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.partialorder.independence.IndependenceSettings;@55080ef5, mLbeIndependenceSettings=[IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=false, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2025-02-05 12:43:24,575 INFO L334 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2025-02-05 12:43:24,577 INFO L276 IsEmpty]: Start isEmpty. Operand has 21 states, 15 states have (on average 1.3333333333333333) internal successors, (20), 16 states have internal predecessors, (20), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2025-02-05 12:43:24,581 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 25 [2025-02-05 12:43:24,581 INFO L210 NwaCegarLoop]: Found error trace [2025-02-05 12:43:24,582 INFO L218 NwaCegarLoop]: trace histogram [3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-02-05 12:43:24,582 INFO L396 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2025-02-05 12:43:24,585 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-02-05 12:43:24,586 INFO L85 PathProgramCache]: Analyzing trace with hash -176009492, now seen corresponding path program 1 times [2025-02-05 12:43:24,590 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-02-05 12:43:24,591 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1342702714] [2025-02-05 12:43:24,591 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-02-05 12:43:24,591 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-02-05 12:43:24,653 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 24 statements into 1 equivalence classes. [2025-02-05 12:43:24,670 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 24 of 24 statements. [2025-02-05 12:43:24,670 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-05 12:43:24,670 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-05 12:43:24,709 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 0 proven. 4 refuted. 0 times theorem prover too weak. 8 trivial. 0 not checked. [2025-02-05 12:43:24,709 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-02-05 12:43:24,710 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1342702714] [2025-02-05 12:43:24,710 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1342702714] provided 0 perfect and 1 imperfect interpolant sequences [2025-02-05 12:43:24,710 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1318408519] [2025-02-05 12:43:24,710 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-02-05 12:43:24,710 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2025-02-05 12:43:24,711 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-05 12:43:24,715 INFO L229 MonitoredProcess]: Starting monitored process 2 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2025-02-05 12:43:24,716 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Waiting until timeout for monitored process [2025-02-05 12:43:24,747 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 24 statements into 1 equivalence classes. [2025-02-05 12:43:24,760 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 24 of 24 statements. [2025-02-05 12:43:24,760 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-05 12:43:24,760 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-05 12:43:24,762 INFO L256 TraceCheckSpWp]: Trace formula consists of 78 conjuncts, 1 conjuncts are in the unsatisfiable core [2025-02-05 12:43:24,764 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-02-05 12:43:24,774 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 4 proven. 0 refuted. 0 times theorem prover too weak. 8 trivial. 0 not checked. [2025-02-05 12:43:24,775 INFO L308 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2025-02-05 12:43:24,776 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1318408519] provided 1 perfect and 0 imperfect interpolant sequences [2025-02-05 12:43:24,776 INFO L185 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2025-02-05 12:43:24,776 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [2] total 2 [2025-02-05 12:43:24,778 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1313954672] [2025-02-05 12:43:24,778 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-02-05 12:43:24,780 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 2 states [2025-02-05 12:43:24,781 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-02-05 12:43:24,793 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2025-02-05 12:43:24,794 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2025-02-05 12:43:24,797 INFO L87 Difference]: Start difference. First operand has 21 states, 15 states have (on average 1.3333333333333333) internal successors, (20), 16 states have internal predecessors, (20), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) Second operand has 2 states, 2 states have (on average 7.0) internal successors, (14), 2 states have internal predecessors, (14), 2 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2025-02-05 12:43:24,806 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2025-02-05 12:43:24,807 INFO L93 Difference]: Finished difference Result 39 states and 51 transitions. [2025-02-05 12:43:24,808 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2025-02-05 12:43:24,809 INFO L78 Accepts]: Start accepts. Automaton has has 2 states, 2 states have (on average 7.0) internal successors, (14), 2 states have internal predecessors, (14), 2 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) Word has length 24 [2025-02-05 12:43:24,809 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2025-02-05 12:43:24,812 INFO L225 Difference]: With dead ends: 39 [2025-02-05 12:43:24,812 INFO L226 Difference]: Without dead ends: 18 [2025-02-05 12:43:24,814 INFO L434 NwaCegarLoop]: 0 DeclaredPredicates, 25 GetRequests, 25 SyntacticMatches, 0 SemanticMatches, 0 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2025-02-05 12:43:24,817 INFO L435 NwaCegarLoop]: 24 mSDtfsCounter, 0 mSDsluCounter, 0 mSDsCounter, 0 mSdLazyCounter, 0 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 0 SdHoareTripleChecker+Valid, 24 SdHoareTripleChecker+Invalid, 0 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 0 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2025-02-05 12:43:24,818 INFO L436 NwaCegarLoop]: SdHoareTripleChecker [0 Valid, 24 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 0 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2025-02-05 12:43:24,827 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 18 states. [2025-02-05 12:43:24,837 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 18 to 18. [2025-02-05 12:43:24,838 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 18 states, 13 states have (on average 1.1538461538461537) internal successors, (15), 13 states have internal predecessors, (15), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2025-02-05 12:43:24,840 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 21 transitions. [2025-02-05 12:43:24,842 INFO L78 Accepts]: Start accepts. Automaton has 18 states and 21 transitions. Word has length 24 [2025-02-05 12:43:24,842 INFO L84 Accepts]: Finished accepts. word is rejected. [2025-02-05 12:43:24,843 INFO L471 AbstractCegarLoop]: Abstraction has 18 states and 21 transitions. [2025-02-05 12:43:24,843 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 2 states, 2 states have (on average 7.0) internal successors, (14), 2 states have internal predecessors, (14), 2 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2025-02-05 12:43:24,843 INFO L276 IsEmpty]: Start isEmpty. Operand 18 states and 21 transitions. [2025-02-05 12:43:24,844 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 25 [2025-02-05 12:43:24,845 INFO L210 NwaCegarLoop]: Found error trace [2025-02-05 12:43:24,845 INFO L218 NwaCegarLoop]: trace histogram [3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-02-05 12:43:24,858 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Ended with exit code 0 [2025-02-05 12:43:25,046 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 2 /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable0 [2025-02-05 12:43:25,046 INFO L396 AbstractCegarLoop]: === Iteration 2 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2025-02-05 12:43:25,047 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-02-05 12:43:25,047 INFO L85 PathProgramCache]: Analyzing trace with hash -1629438869, now seen corresponding path program 1 times [2025-02-05 12:43:25,047 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-02-05 12:43:25,047 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1552323284] [2025-02-05 12:43:25,047 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-02-05 12:43:25,048 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-02-05 12:43:25,062 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 24 statements into 1 equivalence classes. [2025-02-05 12:43:25,081 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 24 of 24 statements. [2025-02-05 12:43:25,081 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-05 12:43:25,081 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-02-05 12:43:25,081 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-02-05 12:43:25,085 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 24 statements into 1 equivalence classes. [2025-02-05 12:43:25,093 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 24 of 24 statements. [2025-02-05 12:43:25,093 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-05 12:43:25,093 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-02-05 12:43:25,103 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-02-05 12:43:25,103 INFO L340 BasicCegarLoop]: Counterexample is feasible [2025-02-05 12:43:25,104 INFO L782 garLoopResultBuilder]: Registering result UNSAFE for location ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION (0 of 1 remaining) [2025-02-05 12:43:25,105 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2025-02-05 12:43:25,107 INFO L422 BasicCegarLoop]: Path program histogram: [1, 1] [2025-02-05 12:43:25,121 INFO L170 ceAbstractionStarter]: Computing trace abstraction results [2025-02-05 12:43:25,123 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 05.02 12:43:25 BoogieIcfgContainer [2025-02-05 12:43:25,123 INFO L131 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2025-02-05 12:43:25,124 INFO L112 PluginConnector]: ------------------------Witness Printer---------------------------- [2025-02-05 12:43:25,124 INFO L270 PluginConnector]: Initializing Witness Printer... [2025-02-05 12:43:25,124 INFO L274 PluginConnector]: Witness Printer initialized [2025-02-05 12:43:25,124 INFO L184 PluginConnector]: Executing the observer RCFGCatcher from plugin Witness Printer for "de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 05.02 12:43:24" (3/4) ... [2025-02-05 12:43:25,126 INFO L149 WitnessPrinter]: No result that supports witness generation found [2025-02-05 12:43:25,126 INFO L131 PluginConnector]: ------------------------ END Witness Printer---------------------------- [2025-02-05 12:43:25,127 INFO L158 Benchmark]: Toolchain (without parser) took 1003.12ms. Allocated memory is still 167.8MB. Free memory was 129.6MB in the beginning and 77.3MB in the end (delta: 52.3MB). Peak memory consumption was 50.3MB. Max. memory is 16.1GB. [2025-02-05 12:43:25,127 INFO L158 Benchmark]: CDTParser took 0.18ms. Allocated memory is still 226.5MB. Free memory is still 147.7MB. There was no memory consumed. Max. memory is 16.1GB. [2025-02-05 12:43:25,127 INFO L158 Benchmark]: CACSL2BoogieTranslator took 157.72ms. Allocated memory is still 167.8MB. Free memory was 129.6MB in the beginning and 118.2MB in the end (delta: 11.5MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. [2025-02-05 12:43:25,128 INFO L158 Benchmark]: Boogie Procedure Inliner took 16.30ms. Allocated memory is still 167.8MB. Free memory was 118.2MB in the beginning and 117.1MB in the end (delta: 1.0MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. [2025-02-05 12:43:25,128 INFO L158 Benchmark]: Boogie Preprocessor took 16.95ms. Allocated memory is still 167.8MB. Free memory was 117.1MB in the beginning and 116.2MB in the end (delta: 951.5kB). There was no memory consumed. Max. memory is 16.1GB. [2025-02-05 12:43:25,128 INFO L158 Benchmark]: IcfgBuilder took 193.67ms. Allocated memory is still 167.8MB. Free memory was 116.2MB in the beginning and 105.1MB in the end (delta: 11.0MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. [2025-02-05 12:43:25,128 INFO L158 Benchmark]: TraceAbstraction took 610.99ms. Allocated memory is still 167.8MB. Free memory was 104.3MB in the beginning and 77.3MB in the end (delta: 26.9MB). Peak memory consumption was 25.2MB. Max. memory is 16.1GB. [2025-02-05 12:43:25,129 INFO L158 Benchmark]: Witness Printer took 2.77ms. Allocated memory is still 167.8MB. Free memory is still 77.3MB. There was no memory consumed. Max. memory is 16.1GB. [2025-02-05 12:43:25,130 INFO L338 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.core: - StatisticsResult: Toolchain Benchmarks Benchmark results are: * CDTParser took 0.18ms. Allocated memory is still 226.5MB. Free memory is still 147.7MB. There was no memory consumed. Max. memory is 16.1GB. * CACSL2BoogieTranslator took 157.72ms. Allocated memory is still 167.8MB. Free memory was 129.6MB in the beginning and 118.2MB in the end (delta: 11.5MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. * Boogie Procedure Inliner took 16.30ms. Allocated memory is still 167.8MB. Free memory was 118.2MB in the beginning and 117.1MB in the end (delta: 1.0MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. * Boogie Preprocessor took 16.95ms. Allocated memory is still 167.8MB. Free memory was 117.1MB in the beginning and 116.2MB in the end (delta: 951.5kB). There was no memory consumed. Max. memory is 16.1GB. * IcfgBuilder took 193.67ms. Allocated memory is still 167.8MB. Free memory was 116.2MB in the beginning and 105.1MB in the end (delta: 11.0MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. * TraceAbstraction took 610.99ms. Allocated memory is still 167.8MB. Free memory was 104.3MB in the beginning and 77.3MB in the end (delta: 26.9MB). Peak memory consumption was 25.2MB. Max. memory is 16.1GB. * Witness Printer took 2.77ms. Allocated memory is still 167.8MB. Free memory is still 77.3MB. There was no memory consumed. Max. memory is 16.1GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - StatisticsResult: ErrorAutomatonStatistics NumberErrorTraces: 0, NumberStatementsAllTraces: 0, NumberRelevantStatements: 0, 0.0s ErrorAutomatonConstructionTimeTotal, 0.0s FaulLocalizationTime, NumberStatementsFirstTrace: -1, TraceLengthAvg: 0, 0.0s ErrorAutomatonConstructionTimeAvg, 0.0s ErrorAutomatonDifferenceTimeAvg, 0.0s ErrorAutomatonDifferenceTimeTotal, NumberOfNoEnhancement: 0, NumberOfFiniteEnhancement: 0, NumberOfInfiniteEnhancement: 0 - UnprovableResult [Line: 18]: Unable to prove that a call to reach_error is unreachable Unable to prove that a call to reach_error is unreachable Reason: overapproximation of someBinaryArithmeticDOUBLEoperation at line 51, overapproximation of someBinaryDOUBLEComparisonOperation at line 53, overapproximation of someBinaryDOUBLEComparisonOperation at line 40, overapproximation of someBinaryDOUBLEComparisonOperation at line 29, overapproximation of someBinaryDOUBLEComparisonOperation at line 28, overapproximation of to_real at line 31. Possible FailurePath: [L23] double E, E0, E1, S0, S1, S; [L24] int i; [L26] E = __VERIFIER_nondet_double() [L27] E0 = __VERIFIER_nondet_double() [L28] CALL assume_abort_if_not(E >= 0. && E <= 1.) VAL [\old(cond)=1] [L16] COND FALSE !(!cond) VAL [\old(cond)=1] [L28] RET assume_abort_if_not(E >= 0. && E <= 1.) [L29] CALL assume_abort_if_not(E0 >= 0. && E0 <= 1.) VAL [\old(cond)=1] [L16] COND FALSE !(!cond) VAL [\old(cond)=1] [L29] RET assume_abort_if_not(E0 >= 0. && E0 <= 1.) [L31] S0 = 0 [L32] S = 0 [L34] i = 0 VAL [i=0] [L34] COND TRUE i <= 1000000 [L36] E1 = E0 [L37] E0 = E [L39] E = __VERIFIER_nondet_double() [L40] CALL assume_abort_if_not(E >= 0. && E <= 1.) VAL [\old(cond)=1] [L16] COND FALSE !(!cond) VAL [\old(cond)=1] [L40] RET assume_abort_if_not(E >= 0. && E <= 1.) VAL [E0=53, i=0] [L42] COND TRUE __VERIFIER_nondet_int() [L43] E1 = E [L44] E0 = E [L45] S0 = E [L46] S = E VAL [E0=55, E=55, S0=55, S=55, i=0] [L49] S1 = S0 [L50] S0 = S [L51] S = 0.7*E - E0*1.3 + E1*1.1 + S0*1.4 - S1*0.7 [L53] CALL __VERIFIER_assert(S >= -4. && S <= 4.) [L18] COND TRUE !(cond) [L18] reach_error() - StatisticsResult: Ultimate Automizer benchmark data CFG has 2 procedures, 21 locations, 1 error locations. Started 1 CEGAR loops. OverallTime: 0.6s, OverallIterations: 2, TraceHistogramMax: 3, PathProgramHistogramMax: 1, EmptinessCheckTime: 0.0s, AutomataDifference: 0.0s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.0s, InitialAbstractionConstructionTime: 0.0s, HoareTripleCheckerStatistics: 0 mSolverCounterUnknown, 0 SdHoareTripleChecker+Valid, 0.0s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 0 mSDsluCounter, 24 SdHoareTripleChecker+Invalid, 0.0s Time, 0 mProtectedAction, 0 SdHoareTripleChecker+Unchecked, 0 IncrementalHoareTripleChecker+Unchecked, 0 mSDsCounter, 0 IncrementalHoareTripleChecker+Valid, 0 mProtectedPredicate, 0 IncrementalHoareTripleChecker+Invalid, 0 SdHoareTripleChecker+Unknown, 0 mSolverCounterNotChecked, 0 mSolverCounterUnsat, 24 mSDtfsCounter, 0 mSolverCounterSat, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Unknown, PredicateUnifierStatistics: 0 DeclaredPredicates, 25 GetRequests, 25 SyntacticMatches, 0 SemanticMatches, 0 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=21occurred in iteration=0, InterpolantAutomatonStates: 2, traceCheckStatistics: No data available, InterpolantConsolidationStatistics: No data available, PathInvariantsStatistics: No data available, 0/0 InterpolantCoveringCapability, TotalInterpolationStatistics: No data available, 0.0s DumpTime, AutomataMinimizationStatistics: 0.0s AutomataMinimizationTime, 1 MinimizatonAttempts, 0 StatesRemovedByMinimization, 0 NontrivialMinimizations, HoareAnnotationStatistics: No data available, RefinementEngineStatistics: TRACE_CHECK: 0.0s SsaConstructionTime, 0.1s SatisfiabilityAnalysisTime, 0.1s InterpolantComputationTime, 72 NumberOfCodeBlocks, 72 NumberOfCodeBlocksAsserted, 3 NumberOfCheckSat, 46 ConstructedInterpolants, 0 QuantifiedInterpolants, 46 SizeOfPredicates, 0 NumberOfNonLiveVariables, 78 ConjunctsInSsa, 1 ConjunctsInUnsatCore, 2 InterpolantComputations, 1 PerfectInterpolantSequences, 20/24 InterpolantCoveringCapability, INVARIANT_SYNTHESIS: No data available, INTERPOLANT_CONSOLIDATION: No data available, ABSTRACT_INTERPRETATION: No data available, PDR: No data available, ACCELERATED_INTERPOLATION: No data available, SIFA: No data available, ReuseStatistics: No data available, ConComCheckerStatistics: No data available RESULT: Ultimate could not prove your program: unable to determine feasibility of some traces [2025-02-05 12:43:25,148 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 (1)] Ended with exit code 0 Received shutdown request... --- End real Ultimate output --- Execution finished normally Using bit-precise analysis Retrying with bit-precise analysis ### Bit-precise run ### Calling Ultimate with: /root/.sdkman/candidates/java/21.0.5-tem/bin/java -Dosgi.configuration.area=/storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/config -Xmx15G -Xms4m -jar /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/plugins/org.eclipse.equinox.launcher_1.6.800.v20240513-1750.jar -data @noDefault -ultimatedata /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data -tc /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/config/AutomizerReach.xml -i ../sv-benchmarks/c/float-benchs/filter2_reinit.c -s /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Bitvector.epf --cacsl2boogietranslator.entry.function main --witnessprinter.witness.directory /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux --witnessprinter.witness.filename witness --witnessprinter.write.witness.besides.input.file false --witnessprinter.graph.data.specification CHECK( init(main()), LTL(G ! call(reach_error())) ) --witnessprinter.graph.data.producer Automizer --witnessprinter.graph.data.architecture 32bit --witnessprinter.graph.data.programhash 77348271d6b3efbe553fb980482d4643f648de35ae877e068f35f88b7419ce44 --- Real Ultimate output --- This is Ultimate 0.3.0-?-c00e63d-m [2025-02-05 12:43:26,972 INFO L188 SettingsManager]: Resetting all preferences to default values... [2025-02-05 12:43:27,053 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Bitvector.epf [2025-02-05 12:43:27,057 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2025-02-05 12:43:27,057 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2025-02-05 12:43:27,100 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2025-02-05 12:43:27,102 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2025-02-05 12:43:27,102 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2025-02-05 12:43:27,102 INFO L151 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2025-02-05 12:43:27,102 INFO L153 SettingsManager]: * Use memory slicer=true [2025-02-05 12:43:27,102 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2025-02-05 12:43:27,102 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2025-02-05 12:43:27,103 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2025-02-05 12:43:27,103 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2025-02-05 12:43:27,103 INFO L153 SettingsManager]: * Use SBE=true [2025-02-05 12:43:27,103 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2025-02-05 12:43:27,103 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2025-02-05 12:43:27,103 INFO L153 SettingsManager]: * sizeof long=4 [2025-02-05 12:43:27,103 INFO L153 SettingsManager]: * sizeof POINTER=4 [2025-02-05 12:43:27,103 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2025-02-05 12:43:27,103 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2025-02-05 12:43:27,103 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2025-02-05 12:43:27,103 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2025-02-05 12:43:27,103 INFO L153 SettingsManager]: * Adapt memory model on pointer casts if necessary=true [2025-02-05 12:43:27,103 INFO L153 SettingsManager]: * Use bitvectors instead of ints=true [2025-02-05 12:43:27,105 INFO L153 SettingsManager]: * Memory model=HoenickeLindenmann_4ByteResolution [2025-02-05 12:43:27,105 INFO L153 SettingsManager]: * sizeof long double=12 [2025-02-05 12:43:27,105 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2025-02-05 12:43:27,105 INFO L153 SettingsManager]: * Behaviour of calls to undefined functions=OVERAPPROXIMATE_BEHAVIOUR [2025-02-05 12:43:27,105 INFO L153 SettingsManager]: * Use constant arrays=true [2025-02-05 12:43:27,105 INFO L151 SettingsManager]: Preferences of IcfgBuilder differ from their defaults: [2025-02-05 12:43:27,106 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2025-02-05 12:43:27,106 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2025-02-05 12:43:27,106 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2025-02-05 12:43:27,106 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-02-05 12:43:27,106 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2025-02-05 12:43:27,106 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2025-02-05 12:43:27,106 INFO L153 SettingsManager]: * Compute procedure contracts=false [2025-02-05 12:43:27,107 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2025-02-05 12:43:27,107 INFO L153 SettingsManager]: * Trace refinement strategy=FOX [2025-02-05 12:43:27,107 INFO L153 SettingsManager]: * Command for external solver=cvc4 --incremental --print-success --lang smt [2025-02-05 12:43:27,107 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2025-02-05 12:43:27,107 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2025-02-05 12:43:27,107 INFO L153 SettingsManager]: * Order on configurations for Petri net unfoldings=DBO [2025-02-05 12:43:27,107 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2025-02-05 12:43:27,107 INFO L153 SettingsManager]: * Looper check in Petri net analysis=SEMANTIC Applying setting for plugin de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator: Entry function -> main Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Witness directory -> /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Witness filename -> witness Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Write witness besides input file -> false Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data specification -> CHECK( init(main()), LTL(G ! call(reach_error())) ) Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data producer -> Automizer Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data architecture -> 32bit Applying setting for plugin de.uni_freiburg.informatik.ultimate.witnessprinter: Graph data programhash -> 77348271d6b3efbe553fb980482d4643f648de35ae877e068f35f88b7419ce44 [2025-02-05 12:43:27,360 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2025-02-05 12:43:27,366 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2025-02-05 12:43:27,367 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2025-02-05 12:43:27,368 INFO L270 PluginConnector]: Initializing CDTParser... [2025-02-05 12:43:27,368 INFO L274 PluginConnector]: CDTParser initialized [2025-02-05 12:43:27,371 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/float-benchs/filter2_reinit.c [2025-02-05 12:43:28,567 INFO L533 CDTParser]: Created temporary CDT project at /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/591d44ab8/653625c78f224063bf212e36f81f82cd/FLAG0f58ab866 [2025-02-05 12:43:28,813 INFO L384 CDTParser]: Found 1 translation units. [2025-02-05 12:43:28,815 INFO L180 CDTParser]: Scanning /storage/repos/ultimate-jdk21/releaseScripts/default/sv-benchmarks/c/float-benchs/filter2_reinit.c [2025-02-05 12:43:28,820 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/591d44ab8/653625c78f224063bf212e36f81f82cd/FLAG0f58ab866 [2025-02-05 12:43:29,158 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/591d44ab8/653625c78f224063bf212e36f81f82cd [2025-02-05 12:43:29,159 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2025-02-05 12:43:29,160 INFO L133 ToolchainWalker]: Walking toolchain with 6 elements. [2025-02-05 12:43:29,161 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2025-02-05 12:43:29,162 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2025-02-05 12:43:29,165 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2025-02-05 12:43:29,166 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 05.02 12:43:29" (1/1) ... [2025-02-05 12:43:29,167 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@5812e66c and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 05.02 12:43:29, skipping insertion in model container [2025-02-05 12:43:29,167 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 05.02 12:43:29" (1/1) ... [2025-02-05 12:43:29,176 INFO L175 MainTranslator]: Built tables and reachable declarations [2025-02-05 12:43:29,283 WARN L250 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate-jdk21/releaseScripts/default/sv-benchmarks/c/float-benchs/filter2_reinit.c[700,713] [2025-02-05 12:43:29,299 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-02-05 12:43:29,314 INFO L200 MainTranslator]: Completed pre-run [2025-02-05 12:43:29,322 WARN L250 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate-jdk21/releaseScripts/default/sv-benchmarks/c/float-benchs/filter2_reinit.c[700,713] [2025-02-05 12:43:29,326 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-02-05 12:43:29,337 INFO L204 MainTranslator]: Completed translation [2025-02-05 12:43:29,338 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 05.02 12:43:29 WrapperNode [2025-02-05 12:43:29,338 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2025-02-05 12:43:29,339 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2025-02-05 12:43:29,339 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2025-02-05 12:43:29,339 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2025-02-05 12:43:29,344 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 05.02 12:43:29" (1/1) ... [2025-02-05 12:43:29,350 INFO L184 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 05.02 12:43:29" (1/1) ... [2025-02-05 12:43:29,362 INFO L138 Inliner]: procedures = 16, calls = 11, calls flagged for inlining = 3, calls inlined = 3, statements flattened = 58 [2025-02-05 12:43:29,363 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2025-02-05 12:43:29,364 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2025-02-05 12:43:29,364 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2025-02-05 12:43:29,364 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2025-02-05 12:43:29,369 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 05.02 12:43:29" (1/1) ... [2025-02-05 12:43:29,369 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 05.02 12:43:29" (1/1) ... [2025-02-05 12:43:29,372 INFO L184 PluginConnector]: Executing the observer MemorySlicer from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 05.02 12:43:29" (1/1) ... [2025-02-05 12:43:29,384 INFO L175 MemorySlicer]: Split 2 memory accesses to 1 slices as follows [2]. 100 percent of accesses are in the largest equivalence class. The 2 initializations are split as follows [2]. The 0 writes are split as follows [0]. [2025-02-05 12:43:29,385 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 05.02 12:43:29" (1/1) ... [2025-02-05 12:43:29,385 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 05.02 12:43:29" (1/1) ... [2025-02-05 12:43:29,392 INFO L184 PluginConnector]: Executing the observer ReplaceArrayAssignments from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 05.02 12:43:29" (1/1) ... [2025-02-05 12:43:29,393 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 05.02 12:43:29" (1/1) ... [2025-02-05 12:43:29,394 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 05.02 12:43:29" (1/1) ... [2025-02-05 12:43:29,398 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 05.02 12:43:29" (1/1) ... [2025-02-05 12:43:29,399 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2025-02-05 12:43:29,400 INFO L112 PluginConnector]: ------------------------IcfgBuilder---------------------------- [2025-02-05 12:43:29,400 INFO L270 PluginConnector]: Initializing IcfgBuilder... [2025-02-05 12:43:29,400 INFO L274 PluginConnector]: IcfgBuilder initialized [2025-02-05 12:43:29,400 INFO L184 PluginConnector]: Executing the observer IcfgBuilderObserver from plugin IcfgBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 05.02 12:43:29" (1/1) ... [2025-02-05 12:43:29,406 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-02-05 12:43:29,414 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-02-05 12:43:29,424 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 (exit command is (exit), workingDir is null) [2025-02-05 12:43:29,430 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 (1)] Waiting until timeout for monitored process [2025-02-05 12:43:29,446 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2025-02-05 12:43:29,447 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~intINTTYPE1#0 [2025-02-05 12:43:29,447 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2025-02-05 12:43:29,447 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2025-02-05 12:43:29,447 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2025-02-05 12:43:29,447 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2025-02-05 12:43:29,494 INFO L257 CfgBuilder]: Building ICFG [2025-02-05 12:43:29,495 INFO L287 CfgBuilder]: Building CFG for each procedure with an implementation [2025-02-05 12:43:33,932 INFO L? ?]: Removed 9 outVars from TransFormulas that were not future-live. [2025-02-05 12:43:33,932 INFO L308 CfgBuilder]: Performing block encoding [2025-02-05 12:43:33,941 INFO L332 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2025-02-05 12:43:33,941 INFO L337 CfgBuilder]: Removed 0 assume(true) statements. [2025-02-05 12:43:33,941 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 05.02 12:43:33 BoogieIcfgContainer [2025-02-05 12:43:33,941 INFO L131 PluginConnector]: ------------------------ END IcfgBuilder---------------------------- [2025-02-05 12:43:33,943 INFO L112 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2025-02-05 12:43:33,943 INFO L270 PluginConnector]: Initializing TraceAbstraction... [2025-02-05 12:43:33,949 INFO L274 PluginConnector]: TraceAbstraction initialized [2025-02-05 12:43:33,950 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 05.02 12:43:29" (1/3) ... [2025-02-05 12:43:33,950 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@1d80f2c3 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 05.02 12:43:33, skipping insertion in model container [2025-02-05 12:43:33,950 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 05.02 12:43:29" (2/3) ... [2025-02-05 12:43:33,950 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@1d80f2c3 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 05.02 12:43:33, skipping insertion in model container [2025-02-05 12:43:33,950 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 05.02 12:43:33" (3/3) ... [2025-02-05 12:43:33,951 INFO L128 eAbstractionObserver]: Analyzing ICFG filter2_reinit.c [2025-02-05 12:43:33,961 INFO L216 ceAbstractionStarter]: Automizer settings: Hoare:LoopHeads NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2025-02-05 12:43:33,962 INFO L151 ceAbstractionStarter]: Applying trace abstraction to ICFG filter2_reinit.c that has 2 procedures, 21 locations, 1 initial locations, 1 loop locations, and 1 error locations. [2025-02-05 12:43:33,991 INFO L332 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2025-02-05 12:43:33,999 INFO L333 AbstractCegarLoop]: Settings: SEPARATE_VIOLATION_CHECK=true, mInterprocedural=true, mMaxIterations=1000000, mWatchIteration=1000000, mArtifact=RCFG, mInterpolation=FPandBP, mInterpolantAutomaton=STRAIGHT_LINE, mDumpAutomata=false, mAutomataFormat=ATS_NUMERATE, mDumpPath=., mDeterminiation=PREDICATE_ABSTRACTION, mMinimize=MINIMIZE_SEVPA, mAutomataTypeConcurrency=PETRI_NET, mHoareTripleChecks=INCREMENTAL, mHoareAnnotationPositions=LoopHeads, mDumpOnlyReuseAutomata=false, mLimitTraceHistogram=0, mErrorLocTimeLimit=0, mLimitPathProgramCount=0, mCollectInterpolantStatistics=true, mHeuristicEmptinessCheck=false, mHeuristicEmptinessCheckAStarHeuristic=ZERO, mHeuristicEmptinessCheckAStarHeuristicRandomSeed=1337, mHeuristicEmptinessCheckSmtFeatureScoringMethod=DAGSIZE, mSMTFeatureExtraction=false, mSMTFeatureExtractionDumpPath=., mOverrideInterpolantAutomaton=false, mMcrInterpolantMethod=WP, mPorIndependenceSettings=[Lde.uni_freiburg.informatik.ultimate.lib.tracecheckerutils.partialorder.independence.IndependenceSettings;@3d434daf, mLbeIndependenceSettings=[IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=false, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2025-02-05 12:43:33,999 INFO L334 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2025-02-05 12:43:34,002 INFO L276 IsEmpty]: Start isEmpty. Operand has 21 states, 15 states have (on average 1.3333333333333333) internal successors, (20), 16 states have internal predecessors, (20), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2025-02-05 12:43:34,006 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 25 [2025-02-05 12:43:34,006 INFO L210 NwaCegarLoop]: Found error trace [2025-02-05 12:43:34,007 INFO L218 NwaCegarLoop]: trace histogram [3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-02-05 12:43:34,007 INFO L396 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2025-02-05 12:43:34,010 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-02-05 12:43:34,010 INFO L85 PathProgramCache]: Analyzing trace with hash -176009492, now seen corresponding path program 1 times [2025-02-05 12:43:34,017 INFO L118 FreeRefinementEngine]: Executing refinement strategy FOX [2025-02-05 12:43:34,017 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1324445746] [2025-02-05 12:43:34,018 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-02-05 12:43:34,018 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 [2025-02-05 12:43:34,018 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/mathsat [2025-02-05 12:43:34,020 INFO L229 MonitoredProcess]: Starting monitored process 2 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2025-02-05 12:43:34,022 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (2)] Waiting until timeout for monitored process [2025-02-05 12:43:34,056 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 24 statements into 1 equivalence classes. [2025-02-05 12:43:34,926 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 24 of 24 statements. [2025-02-05 12:43:34,927 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-05 12:43:34,927 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-05 12:43:34,971 INFO L256 TraceCheckSpWp]: Trace formula consists of 54 conjuncts, 1 conjuncts are in the unsatisfiable core [2025-02-05 12:43:34,974 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-02-05 12:43:34,988 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 4 proven. 0 refuted. 0 times theorem prover too weak. 8 trivial. 0 not checked. [2025-02-05 12:43:34,989 INFO L308 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2025-02-05 12:43:34,989 INFO L136 FreeRefinementEngine]: Strategy FOX found an infeasible trace [2025-02-05 12:43:34,989 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1324445746] [2025-02-05 12:43:34,989 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1324445746] provided 1 perfect and 0 imperfect interpolant sequences [2025-02-05 12:43:34,989 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-02-05 12:43:34,990 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2025-02-05 12:43:34,990 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [563927097] [2025-02-05 12:43:34,991 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-02-05 12:43:34,993 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 2 states [2025-02-05 12:43:34,993 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy FOX [2025-02-05 12:43:35,003 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2025-02-05 12:43:35,003 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2025-02-05 12:43:35,004 INFO L87 Difference]: Start difference. First operand has 21 states, 15 states have (on average 1.3333333333333333) internal successors, (20), 16 states have internal predecessors, (20), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) Second operand has 2 states, 2 states have (on average 7.0) internal successors, (14), 2 states have internal predecessors, (14), 2 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2025-02-05 12:43:35,013 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2025-02-05 12:43:35,013 INFO L93 Difference]: Finished difference Result 39 states and 51 transitions. [2025-02-05 12:43:35,014 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2025-02-05 12:43:35,014 INFO L78 Accepts]: Start accepts. Automaton has has 2 states, 2 states have (on average 7.0) internal successors, (14), 2 states have internal predecessors, (14), 2 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) Word has length 24 [2025-02-05 12:43:35,014 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2025-02-05 12:43:35,017 INFO L225 Difference]: With dead ends: 39 [2025-02-05 12:43:35,017 INFO L226 Difference]: Without dead ends: 18 [2025-02-05 12:43:35,019 INFO L434 NwaCegarLoop]: 0 DeclaredPredicates, 23 GetRequests, 23 SyntacticMatches, 0 SemanticMatches, 0 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2025-02-05 12:43:35,020 INFO L435 NwaCegarLoop]: 24 mSDtfsCounter, 0 mSDsluCounter, 0 mSDsCounter, 0 mSdLazyCounter, 0 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 0 SdHoareTripleChecker+Valid, 24 SdHoareTripleChecker+Invalid, 0 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 0 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2025-02-05 12:43:35,021 INFO L436 NwaCegarLoop]: SdHoareTripleChecker [0 Valid, 24 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 0 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2025-02-05 12:43:35,028 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 18 states. [2025-02-05 12:43:35,035 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 18 to 18. [2025-02-05 12:43:35,035 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 18 states, 13 states have (on average 1.1538461538461537) internal successors, (15), 13 states have internal predecessors, (15), 3 states have call successors, (3), 1 states have call predecessors, (3), 1 states have return successors, (3), 3 states have call predecessors, (3), 3 states have call successors, (3) [2025-02-05 12:43:35,037 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 21 transitions. [2025-02-05 12:43:35,038 INFO L78 Accepts]: Start accepts. Automaton has 18 states and 21 transitions. Word has length 24 [2025-02-05 12:43:35,038 INFO L84 Accepts]: Finished accepts. word is rejected. [2025-02-05 12:43:35,038 INFO L471 AbstractCegarLoop]: Abstraction has 18 states and 21 transitions. [2025-02-05 12:43:35,039 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 2 states, 2 states have (on average 7.0) internal successors, (14), 2 states have internal predecessors, (14), 2 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (3), 1 states have call predecessors, (3), 2 states have call successors, (3) [2025-02-05 12:43:35,039 INFO L276 IsEmpty]: Start isEmpty. Operand 18 states and 21 transitions. [2025-02-05 12:43:35,039 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 25 [2025-02-05 12:43:35,039 INFO L210 NwaCegarLoop]: Found error trace [2025-02-05 12:43:35,040 INFO L218 NwaCegarLoop]: trace histogram [3, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-02-05 12:43:35,066 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (2)] Ended with exit code 0 [2025-02-05 12:43:35,240 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 2 /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 [2025-02-05 12:43:35,241 INFO L396 AbstractCegarLoop]: === Iteration 2 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2025-02-05 12:43:35,241 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-02-05 12:43:35,241 INFO L85 PathProgramCache]: Analyzing trace with hash -1629438869, now seen corresponding path program 1 times [2025-02-05 12:43:35,242 INFO L118 FreeRefinementEngine]: Executing refinement strategy FOX [2025-02-05 12:43:35,242 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1846538472] [2025-02-05 12:43:35,242 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-02-05 12:43:35,242 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 [2025-02-05 12:43:35,242 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/mathsat [2025-02-05 12:43:35,244 INFO L229 MonitoredProcess]: Starting monitored process 3 with /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2025-02-05 12:43:35,245 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (3)] Waiting until timeout for monitored process [2025-02-05 12:43:35,266 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 24 statements into 1 equivalence classes. [2025-02-05 12:43:42,790 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 24 of 24 statements. [2025-02-05 12:43:42,790 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-02-05 12:43:42,790 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-02-05 12:43:42,852 INFO L256 TraceCheckSpWp]: Trace formula consists of 54 conjuncts, 14 conjuncts are in the unsatisfiable core [2025-02-05 12:43:42,862 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-02-05 12:44:01,020 WARN L286 SmtUtils]: Spent 8.21s on a formula simplification that was a NOOP. DAG size: 5 (called from [L 728] de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.simplify) [2025-02-05 12:44:09,226 WARN L286 SmtUtils]: Spent 8.21s on a formula simplification that was a NOOP. DAG size: 3 (called from [L 728] de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.simplify) [2025-02-05 12:44:17,348 WARN L286 SmtUtils]: Spent 8.12s on a formula simplification that was a NOOP. DAG size: 24 (called from [L 728] de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.simplify) [2025-02-05 12:44:29,538 WARN L286 SmtUtils]: Spent 8.12s on a formula simplification that was a NOOP. DAG size: 23 (called from [L 728] de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.simplify) [2025-02-05 12:44:37,750 WARN L286 SmtUtils]: Spent 8.21s on a formula simplification that was a NOOP. DAG size: 5 (called from [L 728] de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.simplify) [2025-02-05 12:44:45,961 WARN L286 SmtUtils]: Spent 8.21s on a formula simplification that was a NOOP. DAG size: 3 (called from [L 728] de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.simplify) [2025-02-05 12:44:58,268 WARN L286 SmtUtils]: Spent 8.21s on a formula simplification that was a NOOP. DAG size: 22 (called from [L 728] de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.simplify) [2025-02-05 12:45:06,465 WARN L286 SmtUtils]: Spent 8.20s on a formula simplification that was a NOOP. DAG size: 23 (called from [L 728] de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.simplify)