./Ultimate.py --spec ../sv-benchmarks/c/properties/unreach-call.prp --file ../sv-benchmarks/c/hardness-nfm22/hardness_loopvsstraightlinecode_25-while_file-40.i --full-output --architecture 32bit -------------------------------------------------------------------------------- Checking for ERROR reachability Using default analysis Version 551b0097 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/hardness-nfm22/hardness_loopvsstraightlinecode_25-while_file-40.i -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 c993de4d7b17f04c627648963789a0b670b012caff83d667499fad77066da826 --- Real Ultimate output --- This is Ultimate 0.3.0-?-551b009-m [2025-01-09 13:29:51,179 INFO L188 SettingsManager]: Resetting all preferences to default values... [2025-01-09 13:29:51,233 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Default.epf [2025-01-09 13:29:51,236 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2025-01-09 13:29:51,237 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2025-01-09 13:29:51,252 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2025-01-09 13:29:51,252 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2025-01-09 13:29:51,252 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2025-01-09 13:29:51,252 INFO L151 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2025-01-09 13:29:51,252 INFO L153 SettingsManager]: * Use memory slicer=true [2025-01-09 13:29:51,253 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2025-01-09 13:29:51,253 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2025-01-09 13:29:51,253 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2025-01-09 13:29:51,253 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2025-01-09 13:29:51,253 INFO L153 SettingsManager]: * Use SBE=true [2025-01-09 13:29:51,253 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2025-01-09 13:29:51,253 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2025-01-09 13:29:51,253 INFO L153 SettingsManager]: * sizeof long=4 [2025-01-09 13:29:51,253 INFO L153 SettingsManager]: * Overapproximate operations on floating types=true [2025-01-09 13:29:51,253 INFO L153 SettingsManager]: * sizeof POINTER=4 [2025-01-09 13:29:51,254 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2025-01-09 13:29:51,254 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2025-01-09 13:29:51,254 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2025-01-09 13:29:51,254 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2025-01-09 13:29:51,254 INFO L153 SettingsManager]: * sizeof long double=12 [2025-01-09 13:29:51,254 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2025-01-09 13:29:51,254 INFO L153 SettingsManager]: * Behaviour of calls to undefined functions=OVERAPPROXIMATE_BEHAVIOUR [2025-01-09 13:29:51,254 INFO L153 SettingsManager]: * Use constant arrays=true [2025-01-09 13:29:51,254 INFO L151 SettingsManager]: Preferences of IcfgBuilder differ from their defaults: [2025-01-09 13:29:51,254 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2025-01-09 13:29:51,254 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2025-01-09 13:29:51,255 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2025-01-09 13:29:51,255 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-01-09 13:29:51,255 INFO L151 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2025-01-09 13:29:51,255 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2025-01-09 13:29:51,255 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2025-01-09 13:29:51,258 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2025-01-09 13:29:51,258 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-01-09 13:29:51,258 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2025-01-09 13:29:51,258 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2025-01-09 13:29:51,258 INFO L153 SettingsManager]: * Compute procedure contracts=false [2025-01-09 13:29:51,258 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2025-01-09 13:29:51,258 INFO L153 SettingsManager]: * Trace refinement strategy=CAMEL [2025-01-09 13:29:51,258 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2025-01-09 13:29:51,259 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2025-01-09 13:29:51,259 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2025-01-09 13:29:51,259 INFO L153 SettingsManager]: * Order on configurations for Petri net unfoldings=DBO [2025-01-09 13:29:51,259 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2025-01-09 13:29:51,259 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 -> c993de4d7b17f04c627648963789a0b670b012caff83d667499fad77066da826 [2025-01-09 13:29:51,494 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2025-01-09 13:29:51,503 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2025-01-09 13:29:51,504 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2025-01-09 13:29:51,506 INFO L270 PluginConnector]: Initializing CDTParser... [2025-01-09 13:29:51,506 INFO L274 PluginConnector]: CDTParser initialized [2025-01-09 13:29:51,506 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/hardness-nfm22/hardness_loopvsstraightlinecode_25-while_file-40.i [2025-01-09 13:29:52,657 INFO L533 CDTParser]: Created temporary CDT project at /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/7a4dca53e/b228b4d6df564c41927c48bdbe5091ca/FLAG47eb0ae3f [2025-01-09 13:29:52,965 INFO L384 CDTParser]: Found 1 translation units. [2025-01-09 13:29:52,975 INFO L180 CDTParser]: Scanning /storage/repos/ultimate-jdk21/releaseScripts/default/sv-benchmarks/c/hardness-nfm22/hardness_loopvsstraightlinecode_25-while_file-40.i [2025-01-09 13:29:52,983 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/7a4dca53e/b228b4d6df564c41927c48bdbe5091ca/FLAG47eb0ae3f [2025-01-09 13:29:52,997 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/7a4dca53e/b228b4d6df564c41927c48bdbe5091ca [2025-01-09 13:29:52,999 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2025-01-09 13:29:53,000 INFO L133 ToolchainWalker]: Walking toolchain with 6 elements. [2025-01-09 13:29:53,002 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2025-01-09 13:29:53,003 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2025-01-09 13:29:53,005 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2025-01-09 13:29:53,006 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 09.01 01:29:52" (1/1) ... [2025-01-09 13:29:53,007 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@15fe0a48 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:29:53, skipping insertion in model container [2025-01-09 13:29:53,007 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 09.01 01:29:52" (1/1) ... [2025-01-09 13:29:53,019 INFO L175 MainTranslator]: Built tables and reachable declarations [2025-01-09 13:29:53,122 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/hardness-nfm22/hardness_loopvsstraightlinecode_25-while_file-40.i[915,928] [2025-01-09 13:29:53,153 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-01-09 13:29:53,160 INFO L200 MainTranslator]: Completed pre-run [2025-01-09 13:29:53,171 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/hardness-nfm22/hardness_loopvsstraightlinecode_25-while_file-40.i[915,928] [2025-01-09 13:29:53,189 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-01-09 13:29:53,200 INFO L204 MainTranslator]: Completed translation [2025-01-09 13:29:53,201 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:29:53 WrapperNode [2025-01-09 13:29:53,201 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2025-01-09 13:29:53,204 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2025-01-09 13:29:53,204 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2025-01-09 13:29:53,205 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2025-01-09 13:29:53,210 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:29:53" (1/1) ... [2025-01-09 13:29:53,219 INFO L184 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:29:53" (1/1) ... [2025-01-09 13:29:53,231 INFO L138 Inliner]: procedures = 26, calls = 28, calls flagged for inlining = 8, calls inlined = 8, statements flattened = 102 [2025-01-09 13:29:53,232 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2025-01-09 13:29:53,232 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2025-01-09 13:29:53,232 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2025-01-09 13:29:53,232 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2025-01-09 13:29:53,238 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:29:53" (1/1) ... [2025-01-09 13:29:53,238 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:29:53" (1/1) ... [2025-01-09 13:29:53,239 INFO L184 PluginConnector]: Executing the observer MemorySlicer from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:29:53" (1/1) ... [2025-01-09 13:29:53,245 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-01-09 13:29:53,246 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:29:53" (1/1) ... [2025-01-09 13:29:53,246 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:29:53" (1/1) ... [2025-01-09 13:29:53,249 INFO L184 PluginConnector]: Executing the observer ReplaceArrayAssignments from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:29:53" (1/1) ... [2025-01-09 13:29:53,250 INFO L184 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:29:53" (1/1) ... [2025-01-09 13:29:53,255 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:29:53" (1/1) ... [2025-01-09 13:29:53,256 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:29:53" (1/1) ... [2025-01-09 13:29:53,256 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:29:53" (1/1) ... [2025-01-09 13:29:53,258 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2025-01-09 13:29:53,258 INFO L112 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2025-01-09 13:29:53,258 INFO L270 PluginConnector]: Initializing RCFGBuilder... [2025-01-09 13:29:53,258 INFO L274 PluginConnector]: RCFGBuilder initialized [2025-01-09 13:29:53,263 INFO L184 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:29:53" (1/1) ... [2025-01-09 13:29:53,269 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-01-09 13:29:53,279 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-09 13:29:53,291 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-01-09 13:29:53,296 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-01-09 13:29:53,311 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2025-01-09 13:29:53,311 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2025-01-09 13:29:53,312 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2025-01-09 13:29:53,312 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#0 [2025-01-09 13:29:53,312 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2025-01-09 13:29:53,312 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2025-01-09 13:29:53,357 INFO L234 CfgBuilder]: Building ICFG [2025-01-09 13:29:53,358 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2025-01-09 13:29:53,497 INFO L? ?]: Removed 8 outVars from TransFormulas that were not future-live. [2025-01-09 13:29:53,497 INFO L283 CfgBuilder]: Performing block encoding [2025-01-09 13:29:53,506 INFO L307 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2025-01-09 13:29:53,506 INFO L312 CfgBuilder]: Removed 1 assume(true) statements. [2025-01-09 13:29:53,506 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 09.01 01:29:53 BoogieIcfgContainer [2025-01-09 13:29:53,507 INFO L131 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2025-01-09 13:29:53,508 INFO L112 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2025-01-09 13:29:53,509 INFO L270 PluginConnector]: Initializing TraceAbstraction... [2025-01-09 13:29:53,512 INFO L274 PluginConnector]: TraceAbstraction initialized [2025-01-09 13:29:53,512 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 09.01 01:29:52" (1/3) ... [2025-01-09 13:29:53,513 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@3920e309 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 09.01 01:29:53, skipping insertion in model container [2025-01-09 13:29:53,513 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:29:53" (2/3) ... [2025-01-09 13:29:53,513 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@3920e309 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 09.01 01:29:53, skipping insertion in model container [2025-01-09 13:29:53,514 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 09.01 01:29:53" (3/3) ... [2025-01-09 13:29:53,515 INFO L128 eAbstractionObserver]: Analyzing ICFG hardness_loopvsstraightlinecode_25-while_file-40.i [2025-01-09 13:29:53,533 INFO L216 ceAbstractionStarter]: Automizer settings: Hoare:LoopHeads NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2025-01-09 13:29:53,534 INFO L151 ceAbstractionStarter]: Applying trace abstraction to ICFG hardness_loopvsstraightlinecode_25-while_file-40.i that has 2 procedures, 49 locations, 1 initial locations, 1 loop locations, and 1 error locations. [2025-01-09 13:29:53,577 INFO L332 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2025-01-09 13:29:53,585 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;@6d17f172, mLbeIndependenceSettings=[IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=false, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2025-01-09 13:29:53,585 INFO L334 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2025-01-09 13:29:53,588 INFO L276 IsEmpty]: Start isEmpty. Operand has 49 states, 31 states have (on average 1.3225806451612903) internal successors, (41), 32 states have internal predecessors, (41), 15 states have call successors, (15), 1 states have call predecessors, (15), 1 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) [2025-01-09 13:29:53,593 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 98 [2025-01-09 13:29:53,593 INFO L210 NwaCegarLoop]: Found error trace [2025-01-09 13:29:53,594 INFO L218 NwaCegarLoop]: trace histogram [15, 15, 15, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-01-09 13:29:53,594 INFO L396 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2025-01-09 13:29:53,598 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-09 13:29:53,598 INFO L85 PathProgramCache]: Analyzing trace with hash -790147736, now seen corresponding path program 1 times [2025-01-09 13:29:53,603 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-01-09 13:29:53,603 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2078447463] [2025-01-09 13:29:53,603 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-01-09 13:29:53,604 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-01-09 13:29:53,664 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 97 statements into 1 equivalence classes. [2025-01-09 13:29:53,723 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 97 of 97 statements. [2025-01-09 13:29:53,724 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-09 13:29:53,724 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-09 13:29:53,921 INFO L134 CoverageAnalysis]: Checked inductivity of 420 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 420 trivial. 0 not checked. [2025-01-09 13:29:53,921 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-01-09 13:29:53,922 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2078447463] [2025-01-09 13:29:53,922 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [2078447463] provided 1 perfect and 0 imperfect interpolant sequences [2025-01-09 13:29:53,922 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-01-09 13:29:53,922 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2025-01-09 13:29:53,923 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [531554658] [2025-01-09 13:29:53,923 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-01-09 13:29:53,926 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2025-01-09 13:29:53,926 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-01-09 13:29:53,939 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2025-01-09 13:29:53,939 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2025-01-09 13:29:53,941 INFO L87 Difference]: Start difference. First operand has 49 states, 31 states have (on average 1.3225806451612903) internal successors, (41), 32 states have internal predecessors, (41), 15 states have call successors, (15), 1 states have call predecessors, (15), 1 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) Second operand has 3 states, 3 states have (on average 8.333333333333334) internal successors, (25), 3 states have internal predecessors, (25), 1 states have call successors, (15), 1 states have call predecessors, (15), 1 states have return successors, (15), 1 states have call predecessors, (15), 1 states have call successors, (15) [2025-01-09 13:29:53,986 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2025-01-09 13:29:53,987 INFO L93 Difference]: Finished difference Result 102 states and 165 transitions. [2025-01-09 13:29:53,987 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2025-01-09 13:29:53,988 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 8.333333333333334) internal successors, (25), 3 states have internal predecessors, (25), 1 states have call successors, (15), 1 states have call predecessors, (15), 1 states have return successors, (15), 1 states have call predecessors, (15), 1 states have call successors, (15) Word has length 97 [2025-01-09 13:29:53,989 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2025-01-09 13:29:53,994 INFO L225 Difference]: With dead ends: 102 [2025-01-09 13:29:53,994 INFO L226 Difference]: Without dead ends: 56 [2025-01-09 13:29:53,997 INFO L434 NwaCegarLoop]: 0 DeclaredPredicates, 3 GetRequests, 2 SyntacticMatches, 0 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2025-01-09 13:29:53,999 INFO L435 NwaCegarLoop]: 72 mSDtfsCounter, 14 mSDsluCounter, 52 mSDsCounter, 0 mSdLazyCounter, 9 mSolverCounterSat, 1 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 14 SdHoareTripleChecker+Valid, 124 SdHoareTripleChecker+Invalid, 10 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 1 IncrementalHoareTripleChecker+Valid, 9 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2025-01-09 13:29:54,001 INFO L436 NwaCegarLoop]: SdHoareTripleChecker [14 Valid, 124 Invalid, 10 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [1 Valid, 9 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2025-01-09 13:29:54,013 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 56 states. [2025-01-09 13:29:54,029 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 56 to 48. [2025-01-09 13:29:54,030 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 48 states, 31 states have (on average 1.2258064516129032) internal successors, (38), 31 states have internal predecessors, (38), 15 states have call successors, (15), 1 states have call predecessors, (15), 1 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) [2025-01-09 13:29:54,034 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 48 states to 48 states and 68 transitions. [2025-01-09 13:29:54,040 INFO L78 Accepts]: Start accepts. Automaton has 48 states and 68 transitions. Word has length 97 [2025-01-09 13:29:54,041 INFO L84 Accepts]: Finished accepts. word is rejected. [2025-01-09 13:29:54,041 INFO L471 AbstractCegarLoop]: Abstraction has 48 states and 68 transitions. [2025-01-09 13:29:54,042 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 8.333333333333334) internal successors, (25), 3 states have internal predecessors, (25), 1 states have call successors, (15), 1 states have call predecessors, (15), 1 states have return successors, (15), 1 states have call predecessors, (15), 1 states have call successors, (15) [2025-01-09 13:29:54,042 INFO L276 IsEmpty]: Start isEmpty. Operand 48 states and 68 transitions. [2025-01-09 13:29:54,044 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 98 [2025-01-09 13:29:54,044 INFO L210 NwaCegarLoop]: Found error trace [2025-01-09 13:29:54,044 INFO L218 NwaCegarLoop]: trace histogram [15, 15, 15, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-01-09 13:29:54,044 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2025-01-09 13:29:54,044 INFO L396 AbstractCegarLoop]: === Iteration 2 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2025-01-09 13:29:54,045 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-09 13:29:54,045 INFO L85 PathProgramCache]: Analyzing trace with hash 984859626, now seen corresponding path program 1 times [2025-01-09 13:29:54,045 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-01-09 13:29:54,045 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [658439979] [2025-01-09 13:29:54,045 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-01-09 13:29:54,045 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-01-09 13:29:54,073 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 97 statements into 1 equivalence classes. [2025-01-09 13:29:54,161 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 97 of 97 statements. [2025-01-09 13:29:54,162 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-09 13:29:54,162 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unknown [2025-01-09 13:29:54,164 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [776084343] [2025-01-09 13:29:54,164 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-01-09 13:29:54,164 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2025-01-09 13:29:54,165 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-09 13:29:54,166 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-01-09 13:29:54,173 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-01-09 13:29:54,236 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 97 statements into 1 equivalence classes. [2025-01-09 13:29:54,281 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 97 of 97 statements. [2025-01-09 13:29:54,281 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-09 13:29:54,281 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-01-09 13:29:54,281 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-01-09 13:29:54,295 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 97 statements into 1 equivalence classes. [2025-01-09 13:29:54,312 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 97 of 97 statements. [2025-01-09 13:29:54,313 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-09 13:29:54,313 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-01-09 13:29:54,356 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-01-09 13:29:54,357 INFO L340 BasicCegarLoop]: Counterexample is feasible [2025-01-09 13:29:54,358 INFO L782 garLoopResultBuilder]: Registering result UNSAFE for location ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION (0 of 1 remaining) [2025-01-09 13:29:54,366 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Forceful destruction successful, exit code 0 [2025-01-09 13:29:54,563 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1,2 /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2025-01-09 13:29:54,569 INFO L422 BasicCegarLoop]: Path program histogram: [1, 1] [2025-01-09 13:29:54,615 INFO L170 ceAbstractionStarter]: Computing trace abstraction results [2025-01-09 13:29:54,617 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 09.01 01:29:54 BoogieIcfgContainer [2025-01-09 13:29:54,617 INFO L131 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2025-01-09 13:29:54,617 INFO L112 PluginConnector]: ------------------------Witness Printer---------------------------- [2025-01-09 13:29:54,618 INFO L270 PluginConnector]: Initializing Witness Printer... [2025-01-09 13:29:54,618 INFO L274 PluginConnector]: Witness Printer initialized [2025-01-09 13:29:54,618 INFO L184 PluginConnector]: Executing the observer RCFGCatcher from plugin Witness Printer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 09.01 01:29:53" (3/4) ... [2025-01-09 13:29:54,619 INFO L149 WitnessPrinter]: No result that supports witness generation found [2025-01-09 13:29:54,620 INFO L131 PluginConnector]: ------------------------ END Witness Printer---------------------------- [2025-01-09 13:29:54,620 INFO L158 Benchmark]: Toolchain (without parser) took 1620.37ms. Allocated memory is still 142.6MB. Free memory was 107.0MB in the beginning and 84.1MB in the end (delta: 22.9MB). Peak memory consumption was 21.9MB. Max. memory is 16.1GB. [2025-01-09 13:29:54,621 INFO L158 Benchmark]: CDTParser took 0.18ms. Allocated memory is still 201.3MB. Free memory is still 127.0MB. There was no memory consumed. Max. memory is 16.1GB. [2025-01-09 13:29:54,621 INFO L158 Benchmark]: CACSL2BoogieTranslator took 199.21ms. Allocated memory is still 142.6MB. Free memory was 106.2MB in the beginning and 93.7MB in the end (delta: 12.4MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. [2025-01-09 13:29:54,621 INFO L158 Benchmark]: Boogie Procedure Inliner took 27.47ms. Allocated memory is still 142.6MB. Free memory was 93.7MB in the beginning and 92.1MB in the end (delta: 1.7MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. [2025-01-09 13:29:54,621 INFO L158 Benchmark]: Boogie Preprocessor took 25.54ms. Allocated memory is still 142.6MB. Free memory was 92.1MB in the beginning and 90.4MB in the end (delta: 1.7MB). There was no memory consumed. Max. memory is 16.1GB. [2025-01-09 13:29:54,622 INFO L158 Benchmark]: RCFGBuilder took 248.76ms. Allocated memory is still 142.6MB. Free memory was 90.4MB in the beginning and 76.1MB in the end (delta: 14.3MB). Peak memory consumption was 16.8MB. Max. memory is 16.1GB. [2025-01-09 13:29:54,622 INFO L158 Benchmark]: TraceAbstraction took 1108.63ms. Allocated memory is still 142.6MB. Free memory was 75.3MB in the beginning and 84.1MB in the end (delta: -8.8MB). There was no memory consumed. Max. memory is 16.1GB. [2025-01-09 13:29:54,622 INFO L158 Benchmark]: Witness Printer took 2.68ms. Allocated memory is still 142.6MB. Free memory was 84.1MB in the beginning and 84.1MB in the end (delta: 41.6kB). There was no memory consumed. Max. memory is 16.1GB. [2025-01-09 13:29:54,623 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 201.3MB. Free memory is still 127.0MB. There was no memory consumed. Max. memory is 16.1GB. * CACSL2BoogieTranslator took 199.21ms. Allocated memory is still 142.6MB. Free memory was 106.2MB in the beginning and 93.7MB in the end (delta: 12.4MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. * Boogie Procedure Inliner took 27.47ms. Allocated memory is still 142.6MB. Free memory was 93.7MB in the beginning and 92.1MB in the end (delta: 1.7MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. * Boogie Preprocessor took 25.54ms. Allocated memory is still 142.6MB. Free memory was 92.1MB in the beginning and 90.4MB in the end (delta: 1.7MB). There was no memory consumed. Max. memory is 16.1GB. * RCFGBuilder took 248.76ms. Allocated memory is still 142.6MB. Free memory was 90.4MB in the beginning and 76.1MB in the end (delta: 14.3MB). Peak memory consumption was 16.8MB. Max. memory is 16.1GB. * TraceAbstraction took 1108.63ms. Allocated memory is still 142.6MB. Free memory was 75.3MB in the beginning and 84.1MB in the end (delta: -8.8MB). There was no memory consumed. Max. memory is 16.1GB. * Witness Printer took 2.68ms. Allocated memory is still 142.6MB. Free memory was 84.1MB in the beginning and 84.1MB in the end (delta: 41.6kB). 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: 19]: 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 someBinaryFLOATComparisonOperation at line 82, overapproximation of someBinaryFLOATComparisonOperation at line 78, overapproximation of someBinaryFLOATComparisonOperation at line 45, overapproximation of someBinaryFLOATComparisonOperation at line 80, overapproximation of someBinaryFLOATComparisonOperation at line 88, overapproximation of someBinaryFLOATComparisonOperation at line 76. Possible FailurePath: [L21] unsigned char isInitial = 0; [L22] signed long int var_1_1 = -4; [L23] unsigned char var_1_2 = 0; [L24] unsigned char var_1_3 = 0; [L25] signed short int var_1_7 = 5; [L26] unsigned long int var_1_9 = 256; [L27] signed char var_1_10 = 10; [L28] signed char var_1_11 = 4; [L29] float var_1_12 = 32.4; [L30] float var_1_13 = 1.2; [L31] float var_1_14 = 64.8; [L32] float var_1_15 = 127.3; [L33] float var_1_16 = 4.02; [L34] signed char var_1_17 = -32; [L35] unsigned long int last_1_var_1_9 = 256; VAL [isInitial=0, last_1_var_1_9=256, var_1_10=10, var_1_11=4, var_1_12=162/5, var_1_13=6/5, var_1_14=324/5, var_1_15=1273/10, var_1_16=201/50, var_1_17=-32, var_1_1=-4, var_1_2=0, var_1_3=0, var_1_7=5, var_1_9=256] [L92] isInitial = 1 [L93] FCALL initially() [L95] CALL updateLastVariables() [L85] last_1_var_1_9 = var_1_9 VAL [isInitial=1, last_1_var_1_9=256, var_1_10=10, var_1_11=4, var_1_12=162/5, var_1_13=6/5, var_1_14=324/5, var_1_15=1273/10, var_1_16=201/50, var_1_17=-32, var_1_1=-4, var_1_2=0, var_1_3=0, var_1_7=5, var_1_9=256] [L95] RET updateLastVariables() [L96] CALL updateVariables() [L59] var_1_2 = __VERIFIER_nondet_uchar() [L60] CALL assume_abort_if_not(var_1_2 >= 0) VAL [\old(cond)=1, isInitial=1, last_1_var_1_9=256, var_1_10=10, var_1_11=4, var_1_12=162/5, var_1_13=6/5, var_1_14=324/5, var_1_15=1273/10, var_1_16=201/50, var_1_17=-32, var_1_1=-4, var_1_3=0, var_1_7=5, var_1_9=256] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_9=256, var_1_10=10, var_1_11=4, var_1_12=162/5, var_1_13=6/5, var_1_14=324/5, var_1_15=1273/10, var_1_16=201/50, var_1_17=-32, var_1_1=-4, var_1_3=0, var_1_7=5, var_1_9=256] [L60] RET assume_abort_if_not(var_1_2 >= 0) VAL [isInitial=1, last_1_var_1_9=256, var_1_10=10, var_1_11=4, var_1_12=162/5, var_1_13=6/5, var_1_14=324/5, var_1_15=1273/10, var_1_16=201/50, var_1_17=-32, var_1_1=-4, var_1_3=0, var_1_7=5, var_1_9=256] [L61] CALL assume_abort_if_not(var_1_2 <= 1) VAL [\old(cond)=1, isInitial=1, last_1_var_1_9=256, var_1_10=10, var_1_11=4, var_1_12=162/5, var_1_13=6/5, var_1_14=324/5, var_1_15=1273/10, var_1_16=201/50, var_1_17=-32, var_1_1=-4, var_1_2=0, var_1_3=0, var_1_7=5, var_1_9=256] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_9=256, var_1_10=10, var_1_11=4, var_1_12=162/5, var_1_13=6/5, var_1_14=324/5, var_1_15=1273/10, var_1_16=201/50, var_1_17=-32, var_1_1=-4, var_1_2=0, var_1_3=0, var_1_7=5, var_1_9=256] [L61] RET assume_abort_if_not(var_1_2 <= 1) VAL [isInitial=1, last_1_var_1_9=256, var_1_10=10, var_1_11=4, var_1_12=162/5, var_1_13=6/5, var_1_14=324/5, var_1_15=1273/10, var_1_16=201/50, var_1_17=-32, var_1_1=-4, var_1_2=0, var_1_3=0, var_1_7=5, var_1_9=256] [L62] var_1_3 = __VERIFIER_nondet_uchar() [L63] CALL assume_abort_if_not(var_1_3 >= 0) VAL [\old(cond)=1, isInitial=1, last_1_var_1_9=256, var_1_10=10, var_1_11=4, var_1_12=162/5, var_1_13=6/5, var_1_14=324/5, var_1_15=1273/10, var_1_16=201/50, var_1_17=-32, var_1_1=-4, var_1_2=0, var_1_7=5, var_1_9=256] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_9=256, var_1_10=10, var_1_11=4, var_1_12=162/5, var_1_13=6/5, var_1_14=324/5, var_1_15=1273/10, var_1_16=201/50, var_1_17=-32, var_1_1=-4, var_1_2=0, var_1_7=5, var_1_9=256] [L63] RET assume_abort_if_not(var_1_3 >= 0) VAL [isInitial=1, last_1_var_1_9=256, var_1_10=10, var_1_11=4, var_1_12=162/5, var_1_13=6/5, var_1_14=324/5, var_1_15=1273/10, var_1_16=201/50, var_1_17=-32, var_1_1=-4, var_1_2=0, var_1_7=5, var_1_9=256] [L64] CALL assume_abort_if_not(var_1_3 <= 1) VAL [\old(cond)=1, isInitial=1, last_1_var_1_9=256, var_1_10=10, var_1_11=4, var_1_12=162/5, var_1_13=6/5, var_1_14=324/5, var_1_15=1273/10, var_1_16=201/50, var_1_17=-32, var_1_1=-4, var_1_2=0, var_1_3=1, var_1_7=5, var_1_9=256] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_9=256, var_1_10=10, var_1_11=4, var_1_12=162/5, var_1_13=6/5, var_1_14=324/5, var_1_15=1273/10, var_1_16=201/50, var_1_17=-32, var_1_1=-4, var_1_2=0, var_1_3=1, var_1_7=5, var_1_9=256] [L64] RET assume_abort_if_not(var_1_3 <= 1) VAL [isInitial=1, last_1_var_1_9=256, var_1_10=10, var_1_11=4, var_1_12=162/5, var_1_13=6/5, var_1_14=324/5, var_1_15=1273/10, var_1_16=201/50, var_1_17=-32, var_1_1=-4, var_1_2=0, var_1_3=1, var_1_7=5, var_1_9=256] [L65] var_1_7 = __VERIFIER_nondet_short() [L66] CALL assume_abort_if_not(var_1_7 >= -32768) VAL [\old(cond)=1, isInitial=1, last_1_var_1_9=256, var_1_10=10, var_1_11=4, var_1_12=162/5, var_1_13=6/5, var_1_14=324/5, var_1_15=1273/10, var_1_16=201/50, var_1_17=-32, var_1_1=-4, var_1_2=0, var_1_3=1, var_1_7=4, var_1_9=256] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_9=256, var_1_10=10, var_1_11=4, var_1_12=162/5, var_1_13=6/5, var_1_14=324/5, var_1_15=1273/10, var_1_16=201/50, var_1_17=-32, var_1_1=-4, var_1_2=0, var_1_3=1, var_1_7=4, var_1_9=256] [L66] RET assume_abort_if_not(var_1_7 >= -32768) VAL [isInitial=1, last_1_var_1_9=256, var_1_10=10, var_1_11=4, var_1_12=162/5, var_1_13=6/5, var_1_14=324/5, var_1_15=1273/10, var_1_16=201/50, var_1_17=-32, var_1_1=-4, var_1_2=0, var_1_3=1, var_1_7=4, var_1_9=256] [L67] CALL assume_abort_if_not(var_1_7 <= 32767) VAL [\old(cond)=1, isInitial=1, last_1_var_1_9=256, var_1_10=10, var_1_11=4, var_1_12=162/5, var_1_13=6/5, var_1_14=324/5, var_1_15=1273/10, var_1_16=201/50, var_1_17=-32, var_1_1=-4, var_1_2=0, var_1_3=1, var_1_7=4, var_1_9=256] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_9=256, var_1_10=10, var_1_11=4, var_1_12=162/5, var_1_13=6/5, var_1_14=324/5, var_1_15=1273/10, var_1_16=201/50, var_1_17=-32, var_1_1=-4, var_1_2=0, var_1_3=1, var_1_7=4, var_1_9=256] [L67] RET assume_abort_if_not(var_1_7 <= 32767) VAL [isInitial=1, last_1_var_1_9=256, var_1_10=10, var_1_11=4, var_1_12=162/5, var_1_13=6/5, var_1_14=324/5, var_1_15=1273/10, var_1_16=201/50, var_1_17=-32, var_1_1=-4, var_1_2=0, var_1_3=1, var_1_7=4, var_1_9=256] [L68] CALL assume_abort_if_not(var_1_7 != 0) VAL [\old(cond)=1, isInitial=1, last_1_var_1_9=256, var_1_10=10, var_1_11=4, var_1_12=162/5, var_1_13=6/5, var_1_14=324/5, var_1_15=1273/10, var_1_16=201/50, var_1_17=-32, var_1_1=-4, var_1_2=0, var_1_3=1, var_1_7=4, var_1_9=256] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_9=256, var_1_10=10, var_1_11=4, var_1_12=162/5, var_1_13=6/5, var_1_14=324/5, var_1_15=1273/10, var_1_16=201/50, var_1_17=-32, var_1_1=-4, var_1_2=0, var_1_3=1, var_1_7=4, var_1_9=256] [L68] RET assume_abort_if_not(var_1_7 != 0) VAL [isInitial=1, last_1_var_1_9=256, var_1_10=10, var_1_11=4, var_1_12=162/5, var_1_13=6/5, var_1_14=324/5, var_1_15=1273/10, var_1_16=201/50, var_1_17=-32, var_1_1=-4, var_1_2=0, var_1_3=1, var_1_7=4, var_1_9=256] [L69] var_1_10 = __VERIFIER_nondet_char() [L70] CALL assume_abort_if_not(var_1_10 >= -1) VAL [\old(cond)=1, isInitial=1, last_1_var_1_9=256, var_1_10=-1, var_1_11=4, var_1_12=162/5, var_1_13=6/5, var_1_14=324/5, var_1_15=1273/10, var_1_16=201/50, var_1_17=-32, var_1_1=-4, var_1_2=0, var_1_3=1, var_1_7=4, var_1_9=256] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_9=256, var_1_10=-1, var_1_11=4, var_1_12=162/5, var_1_13=6/5, var_1_14=324/5, var_1_15=1273/10, var_1_16=201/50, var_1_17=-32, var_1_1=-4, var_1_2=0, var_1_3=1, var_1_7=4, var_1_9=256] [L70] RET assume_abort_if_not(var_1_10 >= -1) VAL [isInitial=1, last_1_var_1_9=256, var_1_10=-1, var_1_11=4, var_1_12=162/5, var_1_13=6/5, var_1_14=324/5, var_1_15=1273/10, var_1_16=201/50, var_1_17=-32, var_1_1=-4, var_1_2=0, var_1_3=1, var_1_7=4, var_1_9=256] [L71] CALL assume_abort_if_not(var_1_10 <= 127) VAL [\old(cond)=1, isInitial=1, last_1_var_1_9=256, var_1_10=-1, var_1_11=4, var_1_12=162/5, var_1_13=6/5, var_1_14=324/5, var_1_15=1273/10, var_1_16=201/50, var_1_17=-32, var_1_1=-4, var_1_2=0, var_1_3=1, var_1_7=4, var_1_9=256] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_9=256, var_1_10=-1, var_1_11=4, var_1_12=162/5, var_1_13=6/5, var_1_14=324/5, var_1_15=1273/10, var_1_16=201/50, var_1_17=-32, var_1_1=-4, var_1_2=0, var_1_3=1, var_1_7=4, var_1_9=256] [L71] RET assume_abort_if_not(var_1_10 <= 127) VAL [isInitial=1, last_1_var_1_9=256, var_1_10=-1, var_1_11=4, var_1_12=162/5, var_1_13=6/5, var_1_14=324/5, var_1_15=1273/10, var_1_16=201/50, var_1_17=-32, var_1_1=-4, var_1_2=0, var_1_3=1, var_1_7=4, var_1_9=256] [L72] var_1_11 = __VERIFIER_nondet_char() [L73] CALL assume_abort_if_not(var_1_11 >= 0) VAL [\old(cond)=1, isInitial=1, last_1_var_1_9=256, var_1_10=-1, var_1_11=0, var_1_12=162/5, var_1_13=6/5, var_1_14=324/5, var_1_15=1273/10, var_1_16=201/50, var_1_17=-32, var_1_1=-4, var_1_2=0, var_1_3=1, var_1_7=4, var_1_9=256] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_9=256, var_1_10=-1, var_1_11=0, var_1_12=162/5, var_1_13=6/5, var_1_14=324/5, var_1_15=1273/10, var_1_16=201/50, var_1_17=-32, var_1_1=-4, var_1_2=0, var_1_3=1, var_1_7=4, var_1_9=256] [L73] RET assume_abort_if_not(var_1_11 >= 0) VAL [isInitial=1, last_1_var_1_9=256, var_1_10=-1, var_1_11=0, var_1_12=162/5, var_1_13=6/5, var_1_14=324/5, var_1_15=1273/10, var_1_16=201/50, var_1_17=-32, var_1_1=-4, var_1_2=0, var_1_3=1, var_1_7=4, var_1_9=256] [L74] CALL assume_abort_if_not(var_1_11 <= 127) VAL [\old(cond)=1, isInitial=1, last_1_var_1_9=256, var_1_10=-1, var_1_11=0, var_1_12=162/5, var_1_13=6/5, var_1_14=324/5, var_1_15=1273/10, var_1_16=201/50, var_1_17=-32, var_1_1=-4, var_1_2=0, var_1_3=1, var_1_7=4, var_1_9=256] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_9=256, var_1_10=-1, var_1_11=0, var_1_12=162/5, var_1_13=6/5, var_1_14=324/5, var_1_15=1273/10, var_1_16=201/50, var_1_17=-32, var_1_1=-4, var_1_2=0, var_1_3=1, var_1_7=4, var_1_9=256] [L74] RET assume_abort_if_not(var_1_11 <= 127) VAL [isInitial=1, last_1_var_1_9=256, var_1_10=-1, var_1_11=0, var_1_12=162/5, var_1_13=6/5, var_1_14=324/5, var_1_15=1273/10, var_1_16=201/50, var_1_17=-32, var_1_1=-4, var_1_2=0, var_1_3=1, var_1_7=4, var_1_9=256] [L75] var_1_13 = __VERIFIER_nondet_float() [L76] CALL assume_abort_if_not((var_1_13 >= 0.0F && var_1_13 <= -1.0e-20F) || (var_1_13 <= 9223372.036854765600e+12F && var_1_13 >= 1.0e-20F )) VAL [\old(cond)=1, isInitial=1, last_1_var_1_9=256, var_1_10=-1, var_1_11=0, var_1_12=162/5, var_1_14=324/5, var_1_15=1273/10, var_1_16=201/50, var_1_17=-32, var_1_1=-4, var_1_2=0, var_1_3=1, var_1_7=4, var_1_9=256] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_9=256, var_1_10=-1, var_1_11=0, var_1_12=162/5, var_1_14=324/5, var_1_15=1273/10, var_1_16=201/50, var_1_17=-32, var_1_1=-4, var_1_2=0, var_1_3=1, var_1_7=4, var_1_9=256] [L76] RET assume_abort_if_not((var_1_13 >= 0.0F && var_1_13 <= -1.0e-20F) || (var_1_13 <= 9223372.036854765600e+12F && var_1_13 >= 1.0e-20F )) VAL [isInitial=1, last_1_var_1_9=256, var_1_10=-1, var_1_11=0, var_1_12=162/5, var_1_14=324/5, var_1_15=1273/10, var_1_16=201/50, var_1_17=-32, var_1_1=-4, var_1_2=0, var_1_3=1, var_1_7=4, var_1_9=256] [L77] var_1_14 = __VERIFIER_nondet_float() [L78] CALL assume_abort_if_not((var_1_14 >= 0.0F && var_1_14 <= -1.0e-20F) || (var_1_14 <= 9223372.036854765600e+12F && var_1_14 >= 1.0e-20F )) VAL [\old(cond)=1, isInitial=1, last_1_var_1_9=256, var_1_10=-1, var_1_11=0, var_1_12=162/5, var_1_15=1273/10, var_1_16=201/50, var_1_17=-32, var_1_1=-4, var_1_2=0, var_1_3=1, var_1_7=4, var_1_9=256] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_9=256, var_1_10=-1, var_1_11=0, var_1_12=162/5, var_1_15=1273/10, var_1_16=201/50, var_1_17=-32, var_1_1=-4, var_1_2=0, var_1_3=1, var_1_7=4, var_1_9=256] [L78] RET assume_abort_if_not((var_1_14 >= 0.0F && var_1_14 <= -1.0e-20F) || (var_1_14 <= 9223372.036854765600e+12F && var_1_14 >= 1.0e-20F )) VAL [isInitial=1, last_1_var_1_9=256, var_1_10=-1, var_1_11=0, var_1_12=162/5, var_1_15=1273/10, var_1_16=201/50, var_1_17=-32, var_1_1=-4, var_1_2=0, var_1_3=1, var_1_7=4, var_1_9=256] [L79] var_1_15 = __VERIFIER_nondet_float() [L80] CALL assume_abort_if_not((var_1_15 >= -922337.2036854765600e+13F && var_1_15 <= -1.0e-20F) || (var_1_15 <= 9223372.036854765600e+12F && var_1_15 >= 1.0e-20F )) VAL [\old(cond)=1, isInitial=1, last_1_var_1_9=256, var_1_10=-1, var_1_11=0, var_1_12=162/5, var_1_16=201/50, var_1_17=-32, var_1_1=-4, var_1_2=0, var_1_3=1, var_1_7=4, var_1_9=256] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_9=256, var_1_10=-1, var_1_11=0, var_1_12=162/5, var_1_16=201/50, var_1_17=-32, var_1_1=-4, var_1_2=0, var_1_3=1, var_1_7=4, var_1_9=256] [L80] RET assume_abort_if_not((var_1_15 >= -922337.2036854765600e+13F && var_1_15 <= -1.0e-20F) || (var_1_15 <= 9223372.036854765600e+12F && var_1_15 >= 1.0e-20F )) VAL [isInitial=1, last_1_var_1_9=256, var_1_10=-1, var_1_11=0, var_1_12=162/5, var_1_16=201/50, var_1_17=-32, var_1_1=-4, var_1_2=0, var_1_3=1, var_1_7=4, var_1_9=256] [L81] var_1_16 = __VERIFIER_nondet_float() [L82] CALL assume_abort_if_not((var_1_16 >= -922337.2036854765600e+13F && var_1_16 <= -1.0e-20F) || (var_1_16 <= 9223372.036854765600e+12F && var_1_16 >= 1.0e-20F )) VAL [\old(cond)=1, isInitial=1, last_1_var_1_9=256, var_1_10=-1, var_1_11=0, var_1_12=162/5, var_1_17=-32, var_1_1=-4, var_1_2=0, var_1_3=1, var_1_7=4, var_1_9=256] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_9=256, var_1_10=-1, var_1_11=0, var_1_12=162/5, var_1_17=-32, var_1_1=-4, var_1_2=0, var_1_3=1, var_1_7=4, var_1_9=256] [L82] RET assume_abort_if_not((var_1_16 >= -922337.2036854765600e+13F && var_1_16 <= -1.0e-20F) || (var_1_16 <= 9223372.036854765600e+12F && var_1_16 >= 1.0e-20F )) VAL [isInitial=1, last_1_var_1_9=256, var_1_10=-1, var_1_11=0, var_1_12=162/5, var_1_17=-32, var_1_1=-4, var_1_2=0, var_1_3=1, var_1_7=4, var_1_9=256] [L96] RET updateVariables() [L97] CALL step() [L39] COND TRUE (var_1_10 - var_1_11) >= last_1_var_1_9 [L40] var_1_9 = (var_1_11 + 2u) VAL [isInitial=1, last_1_var_1_9=256, var_1_10=-1, var_1_11=0, var_1_12=162/5, var_1_17=-32, var_1_1=-4, var_1_2=0, var_1_3=1, var_1_7=4, var_1_9=2] [L42] COND FALSE !(\read(var_1_2)) [L45] var_1_12 = ((((var_1_15) > (var_1_16)) ? (var_1_15) : (var_1_16))) VAL [isInitial=1, last_1_var_1_9=256, var_1_10=-1, var_1_11=0, var_1_12=2, var_1_15=2, var_1_16=0, var_1_17=-32, var_1_1=-4, var_1_2=0, var_1_3=1, var_1_7=4, var_1_9=2] [L47] var_1_17 = -4 VAL [isInitial=1, last_1_var_1_9=256, var_1_10=-1, var_1_11=0, var_1_12=2, var_1_15=2, var_1_16=0, var_1_17=-4, var_1_1=-4, var_1_2=0, var_1_3=1, var_1_7=4, var_1_9=2] [L48] COND FALSE !(\read(var_1_2)) VAL [isInitial=1, last_1_var_1_9=256, var_1_10=-1, var_1_11=0, var_1_12=2, var_1_15=2, var_1_16=0, var_1_17=-4, var_1_1=-4, var_1_2=0, var_1_3=1, var_1_7=4, var_1_9=2] [L97] RET step() [L98] CALL, EXPR property() [L88-L89] return (((var_1_2 ? ((var_1_3 && (var_1_12 <= (- 63.9f))) ? ((var_1_12 >= var_1_12) ? (((var_1_9 / var_1_7) <= var_1_9) ? (var_1_1 == ((signed long int) var_1_9)) : 1) : 1) : 1) : 1) && (((var_1_10 - var_1_11) >= last_1_var_1_9) ? (var_1_9 == ((unsigned long int) (var_1_11 + 2u))) : 1)) && (var_1_2 ? (var_1_12 == ((float) ((((((((var_1_13 - var_1_14) < 0 ) ? -(var_1_13 - var_1_14) : (var_1_13 - var_1_14)))) < (((((var_1_15) < (var_1_16)) ? (var_1_15) : (var_1_16))))) ? (((((var_1_13 - var_1_14) < 0 ) ? -(var_1_13 - var_1_14) : (var_1_13 - var_1_14)))) : (((((var_1_15) < (var_1_16)) ? (var_1_15) : (var_1_16)))))))) : (var_1_12 == ((float) ((((var_1_15) > (var_1_16)) ? (var_1_15) : (var_1_16))))))) && (var_1_17 == ((signed char) -4)) ; VAL [\result=0, isInitial=1, last_1_var_1_9=256, var_1_10=-1, var_1_11=0, var_1_12=2, var_1_15=2, var_1_16=0, var_1_17=-4, var_1_1=-4, var_1_2=0, var_1_3=1, var_1_7=4, var_1_9=2] [L98] RET, EXPR property() [L98] CALL __VERIFIER_assert(property()) [L19] COND TRUE !(cond) VAL [isInitial=1, last_1_var_1_9=256, var_1_10=-1, var_1_11=0, var_1_12=2, var_1_15=2, var_1_16=0, var_1_17=-4, var_1_1=-4, var_1_2=0, var_1_3=1, var_1_7=4, var_1_9=2] [L19] reach_error() VAL [isInitial=1, last_1_var_1_9=256, var_1_10=-1, var_1_11=0, var_1_12=2, var_1_15=2, var_1_16=0, var_1_17=-4, var_1_1=-4, var_1_2=0, var_1_3=1, var_1_7=4, var_1_9=2] - StatisticsResult: Ultimate Automizer benchmark data CFG has 2 procedures, 49 locations, 1 error locations. Started 1 CEGAR loops. OverallTime: 1.0s, OverallIterations: 2, TraceHistogramMax: 15, PathProgramHistogramMax: 1, EmptinessCheckTime: 0.0s, AutomataDifference: 0.1s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.0s, InitialAbstractionConstructionTime: 0.0s, HoareTripleCheckerStatistics: 0 mSolverCounterUnknown, 14 SdHoareTripleChecker+Valid, 0.0s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 14 mSDsluCounter, 124 SdHoareTripleChecker+Invalid, 0.0s Time, 0 mProtectedAction, 0 SdHoareTripleChecker+Unchecked, 0 IncrementalHoareTripleChecker+Unchecked, 52 mSDsCounter, 1 IncrementalHoareTripleChecker+Valid, 0 mProtectedPredicate, 9 IncrementalHoareTripleChecker+Invalid, 10 SdHoareTripleChecker+Unknown, 0 mSolverCounterNotChecked, 1 mSolverCounterUnsat, 72 mSDtfsCounter, 9 mSolverCounterSat, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Unknown, PredicateUnifierStatistics: 0 DeclaredPredicates, 3 GetRequests, 2 SyntacticMatches, 0 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=49occurred in iteration=0, InterpolantAutomatonStates: 3, 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, 8 StatesRemovedByMinimization, 1 NontrivialMinimizations, HoareAnnotationStatistics: No data available, RefinementEngineStatistics: TRACE_CHECK: 0.0s SsaConstructionTime, 0.2s SatisfiabilityAnalysisTime, 0.2s InterpolantComputationTime, 291 NumberOfCodeBlocks, 291 NumberOfCodeBlocksAsserted, 3 NumberOfCheckSat, 96 ConstructedInterpolants, 0 QuantifiedInterpolants, 106 SizeOfPredicates, 0 NumberOfNonLiveVariables, 0 ConjunctsInSsa, 0 ConjunctsInUnsatCore, 1 InterpolantComputations, 1 PerfectInterpolantSequences, 420/420 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-01-09 13:29:54,643 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/hardness-nfm22/hardness_loopvsstraightlinecode_25-while_file-40.i -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 c993de4d7b17f04c627648963789a0b670b012caff83d667499fad77066da826 --- Real Ultimate output --- This is Ultimate 0.3.0-?-551b009-m [2025-01-09 13:29:56,606 INFO L188 SettingsManager]: Resetting all preferences to default values... [2025-01-09 13:29:56,681 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Bitvector.epf [2025-01-09 13:29:56,685 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2025-01-09 13:29:56,686 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2025-01-09 13:29:56,702 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2025-01-09 13:29:56,703 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2025-01-09 13:29:56,703 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2025-01-09 13:29:56,703 INFO L151 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2025-01-09 13:29:56,703 INFO L153 SettingsManager]: * Use memory slicer=true [2025-01-09 13:29:56,703 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2025-01-09 13:29:56,704 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2025-01-09 13:29:56,704 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2025-01-09 13:29:56,704 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2025-01-09 13:29:56,704 INFO L153 SettingsManager]: * Use SBE=true [2025-01-09 13:29:56,704 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2025-01-09 13:29:56,704 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2025-01-09 13:29:56,704 INFO L153 SettingsManager]: * sizeof long=4 [2025-01-09 13:29:56,705 INFO L153 SettingsManager]: * sizeof POINTER=4 [2025-01-09 13:29:56,705 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2025-01-09 13:29:56,705 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2025-01-09 13:29:56,705 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2025-01-09 13:29:56,705 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2025-01-09 13:29:56,705 INFO L153 SettingsManager]: * Adapt memory model on pointer casts if necessary=true [2025-01-09 13:29:56,705 INFO L153 SettingsManager]: * Use bitvectors instead of ints=true [2025-01-09 13:29:56,705 INFO L153 SettingsManager]: * Memory model=HoenickeLindenmann_4ByteResolution [2025-01-09 13:29:56,705 INFO L153 SettingsManager]: * sizeof long double=12 [2025-01-09 13:29:56,705 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2025-01-09 13:29:56,705 INFO L153 SettingsManager]: * Behaviour of calls to undefined functions=OVERAPPROXIMATE_BEHAVIOUR [2025-01-09 13:29:56,706 INFO L153 SettingsManager]: * Use constant arrays=true [2025-01-09 13:29:56,706 INFO L151 SettingsManager]: Preferences of IcfgBuilder differ from their defaults: [2025-01-09 13:29:56,706 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2025-01-09 13:29:56,706 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2025-01-09 13:29:56,706 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2025-01-09 13:29:56,706 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-01-09 13:29:56,706 INFO L151 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2025-01-09 13:29:56,706 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2025-01-09 13:29:56,706 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2025-01-09 13:29:56,706 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2025-01-09 13:29:56,707 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-01-09 13:29:56,707 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2025-01-09 13:29:56,707 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2025-01-09 13:29:56,707 INFO L153 SettingsManager]: * Compute procedure contracts=false [2025-01-09 13:29:56,707 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2025-01-09 13:29:56,707 INFO L153 SettingsManager]: * Trace refinement strategy=FOX [2025-01-09 13:29:56,707 INFO L153 SettingsManager]: * Command for external solver=cvc4 --incremental --print-success --lang smt [2025-01-09 13:29:56,707 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2025-01-09 13:29:56,707 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2025-01-09 13:29:56,707 INFO L153 SettingsManager]: * Order on configurations for Petri net unfoldings=DBO [2025-01-09 13:29:56,707 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2025-01-09 13:29:56,708 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 -> c993de4d7b17f04c627648963789a0b670b012caff83d667499fad77066da826 [2025-01-09 13:29:56,916 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2025-01-09 13:29:56,933 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2025-01-09 13:29:56,934 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2025-01-09 13:29:56,936 INFO L270 PluginConnector]: Initializing CDTParser... [2025-01-09 13:29:56,936 INFO L274 PluginConnector]: CDTParser initialized [2025-01-09 13:29:56,937 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/hardness-nfm22/hardness_loopvsstraightlinecode_25-while_file-40.i [2025-01-09 13:29:58,145 INFO L533 CDTParser]: Created temporary CDT project at /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/5540253e5/09441bea3c6346f08b6d13930080ae61/FLAG0fe6759c9 [2025-01-09 13:29:58,351 INFO L384 CDTParser]: Found 1 translation units. [2025-01-09 13:29:58,351 INFO L180 CDTParser]: Scanning /storage/repos/ultimate-jdk21/releaseScripts/default/sv-benchmarks/c/hardness-nfm22/hardness_loopvsstraightlinecode_25-while_file-40.i [2025-01-09 13:29:58,357 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/5540253e5/09441bea3c6346f08b6d13930080ae61/FLAG0fe6759c9 [2025-01-09 13:29:58,713 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/5540253e5/09441bea3c6346f08b6d13930080ae61 [2025-01-09 13:29:58,715 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2025-01-09 13:29:58,716 INFO L133 ToolchainWalker]: Walking toolchain with 6 elements. [2025-01-09 13:29:58,718 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2025-01-09 13:29:58,718 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2025-01-09 13:29:58,721 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2025-01-09 13:29:58,722 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 09.01 01:29:58" (1/1) ... [2025-01-09 13:29:58,723 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@3ff7838f and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:29:58, skipping insertion in model container [2025-01-09 13:29:58,723 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 09.01 01:29:58" (1/1) ... [2025-01-09 13:29:58,737 INFO L175 MainTranslator]: Built tables and reachable declarations [2025-01-09 13:29:58,824 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/hardness-nfm22/hardness_loopvsstraightlinecode_25-while_file-40.i[915,928] [2025-01-09 13:29:58,857 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-01-09 13:29:58,866 INFO L200 MainTranslator]: Completed pre-run [2025-01-09 13:29:58,874 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/hardness-nfm22/hardness_loopvsstraightlinecode_25-while_file-40.i[915,928] [2025-01-09 13:29:58,893 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-01-09 13:29:58,905 INFO L204 MainTranslator]: Completed translation [2025-01-09 13:29:58,906 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:29:58 WrapperNode [2025-01-09 13:29:58,906 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2025-01-09 13:29:58,907 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2025-01-09 13:29:58,907 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2025-01-09 13:29:58,907 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2025-01-09 13:29:58,911 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:29:58" (1/1) ... [2025-01-09 13:29:58,917 INFO L184 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:29:58" (1/1) ... [2025-01-09 13:29:58,936 INFO L138 Inliner]: procedures = 27, calls = 28, calls flagged for inlining = 8, calls inlined = 8, statements flattened = 99 [2025-01-09 13:29:58,936 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2025-01-09 13:29:58,937 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2025-01-09 13:29:58,937 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2025-01-09 13:29:58,937 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2025-01-09 13:29:58,949 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:29:58" (1/1) ... [2025-01-09 13:29:58,949 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:29:58" (1/1) ... [2025-01-09 13:29:58,955 INFO L184 PluginConnector]: Executing the observer MemorySlicer from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:29:58" (1/1) ... [2025-01-09 13:29:58,967 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-01-09 13:29:58,968 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:29:58" (1/1) ... [2025-01-09 13:29:58,968 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:29:58" (1/1) ... [2025-01-09 13:29:58,972 INFO L184 PluginConnector]: Executing the observer ReplaceArrayAssignments from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:29:58" (1/1) ... [2025-01-09 13:29:58,973 INFO L184 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:29:58" (1/1) ... [2025-01-09 13:29:58,974 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:29:58" (1/1) ... [2025-01-09 13:29:58,975 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:29:58" (1/1) ... [2025-01-09 13:29:58,976 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:29:58" (1/1) ... [2025-01-09 13:29:58,977 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2025-01-09 13:29:58,978 INFO L112 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2025-01-09 13:29:58,978 INFO L270 PluginConnector]: Initializing RCFGBuilder... [2025-01-09 13:29:58,978 INFO L274 PluginConnector]: RCFGBuilder initialized [2025-01-09 13:29:58,979 INFO L184 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:29:58" (1/1) ... [2025-01-09 13:29:58,983 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-01-09 13:29:58,995 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-09 13:29:59,007 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-01-09 13:29:59,012 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-01-09 13:29:59,028 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2025-01-09 13:29:59,028 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~intINTTYPE1#0 [2025-01-09 13:29:59,028 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2025-01-09 13:29:59,028 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2025-01-09 13:29:59,028 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2025-01-09 13:29:59,028 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2025-01-09 13:29:59,083 INFO L234 CfgBuilder]: Building ICFG [2025-01-09 13:29:59,084 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2025-01-09 13:29:59,558 INFO L? ?]: Removed 8 outVars from TransFormulas that were not future-live. [2025-01-09 13:29:59,558 INFO L283 CfgBuilder]: Performing block encoding [2025-01-09 13:29:59,564 INFO L307 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2025-01-09 13:29:59,564 INFO L312 CfgBuilder]: Removed 1 assume(true) statements. [2025-01-09 13:29:59,564 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 09.01 01:29:59 BoogieIcfgContainer [2025-01-09 13:29:59,565 INFO L131 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2025-01-09 13:29:59,566 INFO L112 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2025-01-09 13:29:59,566 INFO L270 PluginConnector]: Initializing TraceAbstraction... [2025-01-09 13:29:59,569 INFO L274 PluginConnector]: TraceAbstraction initialized [2025-01-09 13:29:59,569 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 09.01 01:29:58" (1/3) ... [2025-01-09 13:29:59,569 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@2acb33bd and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 09.01 01:29:59, skipping insertion in model container [2025-01-09 13:29:59,570 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:29:58" (2/3) ... [2025-01-09 13:29:59,570 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@2acb33bd and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 09.01 01:29:59, skipping insertion in model container [2025-01-09 13:29:59,570 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 09.01 01:29:59" (3/3) ... [2025-01-09 13:29:59,571 INFO L128 eAbstractionObserver]: Analyzing ICFG hardness_loopvsstraightlinecode_25-while_file-40.i [2025-01-09 13:29:59,580 INFO L216 ceAbstractionStarter]: Automizer settings: Hoare:LoopHeads NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2025-01-09 13:29:59,581 INFO L151 ceAbstractionStarter]: Applying trace abstraction to ICFG hardness_loopvsstraightlinecode_25-while_file-40.i that has 2 procedures, 49 locations, 1 initial locations, 1 loop locations, and 1 error locations. [2025-01-09 13:29:59,612 INFO L332 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2025-01-09 13:29:59,620 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;@481b521b, mLbeIndependenceSettings=[IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=false, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2025-01-09 13:29:59,620 INFO L334 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2025-01-09 13:29:59,622 INFO L276 IsEmpty]: Start isEmpty. Operand has 49 states, 31 states have (on average 1.3225806451612903) internal successors, (41), 32 states have internal predecessors, (41), 15 states have call successors, (15), 1 states have call predecessors, (15), 1 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) [2025-01-09 13:29:59,627 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 98 [2025-01-09 13:29:59,628 INFO L210 NwaCegarLoop]: Found error trace [2025-01-09 13:29:59,628 INFO L218 NwaCegarLoop]: trace histogram [15, 15, 15, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-01-09 13:29:59,628 INFO L396 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2025-01-09 13:29:59,631 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-09 13:29:59,632 INFO L85 PathProgramCache]: Analyzing trace with hash -790147736, now seen corresponding path program 1 times [2025-01-09 13:29:59,638 INFO L118 FreeRefinementEngine]: Executing refinement strategy FOX [2025-01-09 13:29:59,639 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1299239292] [2025-01-09 13:29:59,639 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-01-09 13:29:59,639 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-01-09 13:29:59,639 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/mathsat [2025-01-09 13:29:59,642 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-01-09 13:29:59,647 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-01-09 13:29:59,712 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 97 statements into 1 equivalence classes. [2025-01-09 13:29:59,897 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 97 of 97 statements. [2025-01-09 13:29:59,897 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-09 13:29:59,897 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-09 13:29:59,906 INFO L256 TraceCheckSpWp]: Trace formula consists of 158 conjuncts, 2 conjuncts are in the unsatisfiable core [2025-01-09 13:29:59,912 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-01-09 13:29:59,963 INFO L134 CoverageAnalysis]: Checked inductivity of 420 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 420 trivial. 0 not checked. [2025-01-09 13:29:59,964 INFO L308 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2025-01-09 13:29:59,964 INFO L136 FreeRefinementEngine]: Strategy FOX found an infeasible trace [2025-01-09 13:29:59,964 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1299239292] [2025-01-09 13:29:59,964 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1299239292] provided 1 perfect and 0 imperfect interpolant sequences [2025-01-09 13:29:59,965 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-01-09 13:29:59,965 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2025-01-09 13:29:59,966 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1535374866] [2025-01-09 13:29:59,966 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-01-09 13:29:59,968 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2025-01-09 13:29:59,969 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy FOX [2025-01-09 13:29:59,980 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2025-01-09 13:29:59,980 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2025-01-09 13:29:59,982 INFO L87 Difference]: Start difference. First operand has 49 states, 31 states have (on average 1.3225806451612903) internal successors, (41), 32 states have internal predecessors, (41), 15 states have call successors, (15), 1 states have call predecessors, (15), 1 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) Second operand has 3 states, 3 states have (on average 8.333333333333334) internal successors, (25), 3 states have internal predecessors, (25), 1 states have call successors, (15), 1 states have call predecessors, (15), 1 states have return successors, (15), 1 states have call predecessors, (15), 1 states have call successors, (15) [2025-01-09 13:30:00,149 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2025-01-09 13:30:00,150 INFO L93 Difference]: Finished difference Result 102 states and 165 transitions. [2025-01-09 13:30:00,151 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2025-01-09 13:30:00,152 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 8.333333333333334) internal successors, (25), 3 states have internal predecessors, (25), 1 states have call successors, (15), 1 states have call predecessors, (15), 1 states have return successors, (15), 1 states have call predecessors, (15), 1 states have call successors, (15) Word has length 97 [2025-01-09 13:30:00,152 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2025-01-09 13:30:00,177 INFO L225 Difference]: With dead ends: 102 [2025-01-09 13:30:00,177 INFO L226 Difference]: Without dead ends: 56 [2025-01-09 13:30:00,179 INFO L434 NwaCegarLoop]: 0 DeclaredPredicates, 96 GetRequests, 95 SyntacticMatches, 0 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2025-01-09 13:30:00,181 INFO L435 NwaCegarLoop]: 72 mSDtfsCounter, 14 mSDsluCounter, 51 mSDsCounter, 0 mSdLazyCounter, 10 mSolverCounterSat, 1 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 14 SdHoareTripleChecker+Valid, 123 SdHoareTripleChecker+Invalid, 11 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 1 IncrementalHoareTripleChecker+Valid, 10 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2025-01-09 13:30:00,181 INFO L436 NwaCegarLoop]: SdHoareTripleChecker [14 Valid, 123 Invalid, 11 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [1 Valid, 10 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2025-01-09 13:30:00,189 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 56 states. [2025-01-09 13:30:00,202 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 56 to 48. [2025-01-09 13:30:00,202 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 48 states, 31 states have (on average 1.2258064516129032) internal successors, (38), 31 states have internal predecessors, (38), 15 states have call successors, (15), 1 states have call predecessors, (15), 1 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) [2025-01-09 13:30:00,208 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 48 states to 48 states and 68 transitions. [2025-01-09 13:30:00,209 INFO L78 Accepts]: Start accepts. Automaton has 48 states and 68 transitions. Word has length 97 [2025-01-09 13:30:00,210 INFO L84 Accepts]: Finished accepts. word is rejected. [2025-01-09 13:30:00,210 INFO L471 AbstractCegarLoop]: Abstraction has 48 states and 68 transitions. [2025-01-09 13:30:00,210 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 8.333333333333334) internal successors, (25), 3 states have internal predecessors, (25), 1 states have call successors, (15), 1 states have call predecessors, (15), 1 states have return successors, (15), 1 states have call predecessors, (15), 1 states have call successors, (15) [2025-01-09 13:30:00,211 INFO L276 IsEmpty]: Start isEmpty. Operand 48 states and 68 transitions. [2025-01-09 13:30:00,212 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 98 [2025-01-09 13:30:00,212 INFO L210 NwaCegarLoop]: Found error trace [2025-01-09 13:30:00,213 INFO L218 NwaCegarLoop]: trace histogram [15, 15, 15, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-01-09 13:30:00,225 INFO L540 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)] Forceful destruction successful, exit code 0 [2025-01-09 13:30:00,413 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-01-09 13:30:00,413 INFO L396 AbstractCegarLoop]: === Iteration 2 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2025-01-09 13:30:00,414 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-09 13:30:00,414 INFO L85 PathProgramCache]: Analyzing trace with hash 984859626, now seen corresponding path program 1 times [2025-01-09 13:30:00,414 INFO L118 FreeRefinementEngine]: Executing refinement strategy FOX [2025-01-09 13:30:00,414 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [2031614169] [2025-01-09 13:30:00,415 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-01-09 13:30:00,415 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-01-09 13:30:00,415 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/mathsat [2025-01-09 13:30:00,417 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-01-09 13:30:00,419 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-01-09 13:30:00,459 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 97 statements into 1 equivalence classes. [2025-01-09 13:30:00,653 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 97 of 97 statements. [2025-01-09 13:30:00,653 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-09 13:30:00,653 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-09 13:30:00,665 INFO L256 TraceCheckSpWp]: Trace formula consists of 158 conjuncts, 13 conjuncts are in the unsatisfiable core [2025-01-09 13:30:00,670 INFO L279 TraceCheckSpWp]: Computing forward predicates...