./Ultimate.py --spec ../sv-benchmarks/c/properties/unreach-call.prp --file ../sv-benchmarks/c/hardness-nfm22/hardness_loopvsstraightlinecode_50-while_file-77.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_50-while_file-77.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 78836c178ddb16256f411b8e068f2e4220ea92222978b5c3751a71975a7a158a --- Real Ultimate output --- This is Ultimate 0.3.0-?-551b009-m [2025-01-09 13:59:01,912 INFO L188 SettingsManager]: Resetting all preferences to default values... [2025-01-09 13:59:01,963 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:59:01,966 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2025-01-09 13:59:01,966 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2025-01-09 13:59:01,988 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2025-01-09 13:59:01,990 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2025-01-09 13:59:01,990 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2025-01-09 13:59:01,991 INFO L151 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2025-01-09 13:59:01,991 INFO L153 SettingsManager]: * Use memory slicer=true [2025-01-09 13:59:01,992 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2025-01-09 13:59:01,992 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2025-01-09 13:59:01,992 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2025-01-09 13:59:01,992 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2025-01-09 13:59:01,992 INFO L153 SettingsManager]: * Use SBE=true [2025-01-09 13:59:01,993 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2025-01-09 13:59:01,993 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2025-01-09 13:59:01,993 INFO L153 SettingsManager]: * sizeof long=4 [2025-01-09 13:59:01,993 INFO L153 SettingsManager]: * Overapproximate operations on floating types=true [2025-01-09 13:59:01,993 INFO L153 SettingsManager]: * sizeof POINTER=4 [2025-01-09 13:59:01,993 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2025-01-09 13:59:01,993 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2025-01-09 13:59:01,993 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2025-01-09 13:59:01,993 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2025-01-09 13:59:01,993 INFO L153 SettingsManager]: * sizeof long double=12 [2025-01-09 13:59:01,993 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2025-01-09 13:59:01,994 INFO L153 SettingsManager]: * Behaviour of calls to undefined functions=OVERAPPROXIMATE_BEHAVIOUR [2025-01-09 13:59:01,994 INFO L153 SettingsManager]: * Use constant arrays=true [2025-01-09 13:59:01,994 INFO L151 SettingsManager]: Preferences of IcfgBuilder differ from their defaults: [2025-01-09 13:59:01,994 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2025-01-09 13:59:01,994 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2025-01-09 13:59:01,994 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2025-01-09 13:59:01,994 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-01-09 13:59:01,994 INFO L151 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2025-01-09 13:59:01,994 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2025-01-09 13:59:01,995 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2025-01-09 13:59:01,995 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2025-01-09 13:59:01,995 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-01-09 13:59:01,995 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2025-01-09 13:59:01,995 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2025-01-09 13:59:01,995 INFO L153 SettingsManager]: * Compute procedure contracts=false [2025-01-09 13:59:01,995 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2025-01-09 13:59:01,995 INFO L153 SettingsManager]: * Trace refinement strategy=CAMEL [2025-01-09 13:59:01,995 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2025-01-09 13:59:01,995 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2025-01-09 13:59:01,996 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2025-01-09 13:59:01,996 INFO L153 SettingsManager]: * Order on configurations for Petri net unfoldings=DBO [2025-01-09 13:59:01,996 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2025-01-09 13:59:01,996 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 -> 78836c178ddb16256f411b8e068f2e4220ea92222978b5c3751a71975a7a158a [2025-01-09 13:59:02,188 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2025-01-09 13:59:02,199 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2025-01-09 13:59:02,201 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2025-01-09 13:59:02,202 INFO L270 PluginConnector]: Initializing CDTParser... [2025-01-09 13:59:02,203 INFO L274 PluginConnector]: CDTParser initialized [2025-01-09 13:59:02,203 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/hardness-nfm22/hardness_loopvsstraightlinecode_50-while_file-77.i [2025-01-09 13:59:03,455 INFO L533 CDTParser]: Created temporary CDT project at /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/fe2ba6404/4d08f79a27234d78ba4fcddf31bff3f1/FLAG263dbd1b8 [2025-01-09 13:59:03,684 INFO L384 CDTParser]: Found 1 translation units. [2025-01-09 13:59:03,684 INFO L180 CDTParser]: Scanning /storage/repos/ultimate-jdk21/releaseScripts/default/sv-benchmarks/c/hardness-nfm22/hardness_loopvsstraightlinecode_50-while_file-77.i [2025-01-09 13:59:03,690 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/fe2ba6404/4d08f79a27234d78ba4fcddf31bff3f1/FLAG263dbd1b8 [2025-01-09 13:59:03,699 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/fe2ba6404/4d08f79a27234d78ba4fcddf31bff3f1 [2025-01-09 13:59:03,701 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2025-01-09 13:59:03,702 INFO L133 ToolchainWalker]: Walking toolchain with 6 elements. [2025-01-09 13:59:03,703 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2025-01-09 13:59:03,703 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2025-01-09 13:59:03,705 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2025-01-09 13:59:03,706 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 09.01 01:59:03" (1/1) ... [2025-01-09 13:59:03,706 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@2078f7b6 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:59:03, skipping insertion in model container [2025-01-09 13:59:03,707 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 09.01 01:59:03" (1/1) ... [2025-01-09 13:59:03,717 INFO L175 MainTranslator]: Built tables and reachable declarations [2025-01-09 13:59:03,832 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_50-while_file-77.i[915,928] [2025-01-09 13:59:03,860 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-01-09 13:59:03,867 INFO L200 MainTranslator]: Completed pre-run [2025-01-09 13:59:03,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_50-while_file-77.i[915,928] [2025-01-09 13:59:03,889 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-01-09 13:59:03,899 INFO L204 MainTranslator]: Completed translation [2025-01-09 13:59:03,899 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:59:03 WrapperNode [2025-01-09 13:59:03,900 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2025-01-09 13:59:03,900 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2025-01-09 13:59:03,900 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2025-01-09 13:59:03,900 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2025-01-09 13:59:03,908 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:59:03" (1/1) ... [2025-01-09 13:59:03,914 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:59:03" (1/1) ... [2025-01-09 13:59:03,946 INFO L138 Inliner]: procedures = 26, calls = 32, calls flagged for inlining = 8, calls inlined = 8, statements flattened = 136 [2025-01-09 13:59:03,947 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2025-01-09 13:59:03,947 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2025-01-09 13:59:03,947 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2025-01-09 13:59:03,947 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2025-01-09 13:59:03,960 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:59:03" (1/1) ... [2025-01-09 13:59:03,960 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:59:03" (1/1) ... [2025-01-09 13:59:03,962 INFO L184 PluginConnector]: Executing the observer MemorySlicer from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:59:03" (1/1) ... [2025-01-09 13:59:03,975 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:59:03,975 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:59:03" (1/1) ... [2025-01-09 13:59:03,975 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:59:03" (1/1) ... [2025-01-09 13:59:03,980 INFO L184 PluginConnector]: Executing the observer ReplaceArrayAssignments from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:59:03" (1/1) ... [2025-01-09 13:59:03,986 INFO L184 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:59:03" (1/1) ... [2025-01-09 13:59:03,988 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:59:03" (1/1) ... [2025-01-09 13:59:03,989 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:59:03" (1/1) ... [2025-01-09 13:59:03,993 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:59:03" (1/1) ... [2025-01-09 13:59:03,995 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2025-01-09 13:59:03,996 INFO L112 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2025-01-09 13:59:03,996 INFO L270 PluginConnector]: Initializing RCFGBuilder... [2025-01-09 13:59:03,996 INFO L274 PluginConnector]: RCFGBuilder initialized [2025-01-09 13:59:04,000 INFO L184 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:59:03" (1/1) ... [2025-01-09 13:59:04,007 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-01-09 13:59:04,019 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-09 13:59:04,043 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:59:04,052 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:59:04,080 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2025-01-09 13:59:04,080 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2025-01-09 13:59:04,080 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2025-01-09 13:59:04,080 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#0 [2025-01-09 13:59:04,080 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2025-01-09 13:59:04,080 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2025-01-09 13:59:04,151 INFO L234 CfgBuilder]: Building ICFG [2025-01-09 13:59:04,152 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2025-01-09 13:59:04,374 INFO L? ?]: Removed 18 outVars from TransFormulas that were not future-live. [2025-01-09 13:59:04,374 INFO L283 CfgBuilder]: Performing block encoding [2025-01-09 13:59:04,385 INFO L307 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2025-01-09 13:59:04,385 INFO L312 CfgBuilder]: Removed 1 assume(true) statements. [2025-01-09 13:59:04,385 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 09.01 01:59:04 BoogieIcfgContainer [2025-01-09 13:59:04,385 INFO L131 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2025-01-09 13:59:04,389 INFO L112 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2025-01-09 13:59:04,389 INFO L270 PluginConnector]: Initializing TraceAbstraction... [2025-01-09 13:59:04,392 INFO L274 PluginConnector]: TraceAbstraction initialized [2025-01-09 13:59:04,392 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 09.01 01:59:03" (1/3) ... [2025-01-09 13:59:04,394 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@5bdf2dde and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 09.01 01:59:04, skipping insertion in model container [2025-01-09 13:59:04,394 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:59:03" (2/3) ... [2025-01-09 13:59:04,394 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@5bdf2dde and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 09.01 01:59:04, skipping insertion in model container [2025-01-09 13:59:04,394 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 09.01 01:59:04" (3/3) ... [2025-01-09 13:59:04,395 INFO L128 eAbstractionObserver]: Analyzing ICFG hardness_loopvsstraightlinecode_50-while_file-77.i [2025-01-09 13:59:04,408 INFO L216 ceAbstractionStarter]: Automizer settings: Hoare:LoopHeads NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2025-01-09 13:59:04,412 INFO L151 ceAbstractionStarter]: Applying trace abstraction to ICFG hardness_loopvsstraightlinecode_50-while_file-77.i that has 2 procedures, 60 locations, 1 initial locations, 1 loop locations, and 1 error locations. [2025-01-09 13:59:04,454 INFO L332 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2025-01-09 13:59:04,464 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;@41d7ea0, mLbeIndependenceSettings=[IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=false, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2025-01-09 13:59:04,464 INFO L334 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2025-01-09 13:59:04,468 INFO L276 IsEmpty]: Start isEmpty. Operand has 60 states, 38 states have (on average 1.368421052631579) internal successors, (52), 39 states have internal predecessors, (52), 19 states have call successors, (19), 1 states have call predecessors, (19), 1 states have return successors, (19), 19 states have call predecessors, (19), 19 states have call successors, (19) [2025-01-09 13:59:04,474 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 124 [2025-01-09 13:59:04,475 INFO L210 NwaCegarLoop]: Found error trace [2025-01-09 13:59:04,475 INFO L218 NwaCegarLoop]: trace histogram [19, 19, 19, 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, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-01-09 13:59:04,476 INFO L396 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2025-01-09 13:59:04,479 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-09 13:59:04,479 INFO L85 PathProgramCache]: Analyzing trace with hash -805699891, now seen corresponding path program 1 times [2025-01-09 13:59:04,484 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-01-09 13:59:04,484 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [756716954] [2025-01-09 13:59:04,484 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-01-09 13:59:04,484 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-01-09 13:59:04,543 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 123 statements into 1 equivalence classes. [2025-01-09 13:59:04,565 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 123 of 123 statements. [2025-01-09 13:59:04,565 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-09 13:59:04,565 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-09 13:59:04,659 INFO L134 CoverageAnalysis]: Checked inductivity of 684 backedges. 0 proven. 36 refuted. 0 times theorem prover too weak. 648 trivial. 0 not checked. [2025-01-09 13:59:04,659 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-01-09 13:59:04,659 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [756716954] [2025-01-09 13:59:04,660 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [756716954] provided 0 perfect and 1 imperfect interpolant sequences [2025-01-09 13:59:04,660 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [373503201] [2025-01-09 13:59:04,660 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-01-09 13:59:04,660 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2025-01-09 13:59:04,660 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-09 13:59:04,662 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:59:04,665 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:59:04,741 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 123 statements into 1 equivalence classes. [2025-01-09 13:59:04,807 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 123 of 123 statements. [2025-01-09 13:59:04,807 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-09 13:59:04,807 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-09 13:59:04,809 INFO L256 TraceCheckSpWp]: Trace formula consists of 295 conjuncts, 1 conjuncts are in the unsatisfiable core [2025-01-09 13:59:04,813 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-01-09 13:59:04,827 INFO L134 CoverageAnalysis]: Checked inductivity of 684 backedges. 36 proven. 0 refuted. 0 times theorem prover too weak. 648 trivial. 0 not checked. [2025-01-09 13:59:04,827 INFO L308 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2025-01-09 13:59:04,827 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [373503201] provided 1 perfect and 0 imperfect interpolant sequences [2025-01-09 13:59:04,827 INFO L185 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2025-01-09 13:59:04,828 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [2] total 2 [2025-01-09 13:59:04,829 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1320362289] [2025-01-09 13:59:04,829 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-01-09 13:59:04,832 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 2 states [2025-01-09 13:59:04,832 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-01-09 13:59:04,845 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2025-01-09 13:59:04,846 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2025-01-09 13:59:04,847 INFO L87 Difference]: Start difference. First operand has 60 states, 38 states have (on average 1.368421052631579) internal successors, (52), 39 states have internal predecessors, (52), 19 states have call successors, (19), 1 states have call predecessors, (19), 1 states have return successors, (19), 19 states have call predecessors, (19), 19 states have call successors, (19) Second operand has 2 states, 2 states have (on average 16.5) internal successors, (33), 2 states have internal predecessors, (33), 2 states have call successors, (19), 2 states have call predecessors, (19), 1 states have return successors, (19), 1 states have call predecessors, (19), 2 states have call successors, (19) [2025-01-09 13:59:04,866 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2025-01-09 13:59:04,866 INFO L93 Difference]: Finished difference Result 114 states and 194 transitions. [2025-01-09 13:59:04,867 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2025-01-09 13:59:04,868 INFO L78 Accepts]: Start accepts. Automaton has has 2 states, 2 states have (on average 16.5) internal successors, (33), 2 states have internal predecessors, (33), 2 states have call successors, (19), 2 states have call predecessors, (19), 1 states have return successors, (19), 1 states have call predecessors, (19), 2 states have call successors, (19) Word has length 123 [2025-01-09 13:59:04,868 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2025-01-09 13:59:04,876 INFO L225 Difference]: With dead ends: 114 [2025-01-09 13:59:04,876 INFO L226 Difference]: Without dead ends: 57 [2025-01-09 13:59:04,880 INFO L434 NwaCegarLoop]: 0 DeclaredPredicates, 124 GetRequests, 124 SyntacticMatches, 0 SemanticMatches, 0 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2025-01-09 13:59:04,885 INFO L435 NwaCegarLoop]: 85 mSDtfsCounter, 0 mSDsluCounter, 0 mSDsCounter, 0 mSdLazyCounter, 0 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 0 SdHoareTripleChecker+Valid, 85 SdHoareTripleChecker+Invalid, 0 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 0 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2025-01-09 13:59:04,888 INFO L436 NwaCegarLoop]: SdHoareTripleChecker [0 Valid, 85 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 0 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2025-01-09 13:59:04,899 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 57 states. [2025-01-09 13:59:04,919 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 57 to 57. [2025-01-09 13:59:04,920 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 57 states, 36 states have (on average 1.3055555555555556) internal successors, (47), 36 states have internal predecessors, (47), 19 states have call successors, (19), 1 states have call predecessors, (19), 1 states have return successors, (19), 19 states have call predecessors, (19), 19 states have call successors, (19) [2025-01-09 13:59:04,924 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 57 states to 57 states and 85 transitions. [2025-01-09 13:59:04,926 INFO L78 Accepts]: Start accepts. Automaton has 57 states and 85 transitions. Word has length 123 [2025-01-09 13:59:04,926 INFO L84 Accepts]: Finished accepts. word is rejected. [2025-01-09 13:59:04,926 INFO L471 AbstractCegarLoop]: Abstraction has 57 states and 85 transitions. [2025-01-09 13:59:04,927 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 2 states, 2 states have (on average 16.5) internal successors, (33), 2 states have internal predecessors, (33), 2 states have call successors, (19), 2 states have call predecessors, (19), 1 states have return successors, (19), 1 states have call predecessors, (19), 2 states have call successors, (19) [2025-01-09 13:59:04,927 INFO L276 IsEmpty]: Start isEmpty. Operand 57 states and 85 transitions. [2025-01-09 13:59:04,929 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 124 [2025-01-09 13:59:04,929 INFO L210 NwaCegarLoop]: Found error trace [2025-01-09 13:59:04,929 INFO L218 NwaCegarLoop]: trace histogram [19, 19, 19, 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, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-01-09 13:59:04,936 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Ended with exit code 0 [2025-01-09 13:59:05,133 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 2 /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable0 [2025-01-09 13:59:05,133 INFO L396 AbstractCegarLoop]: === Iteration 2 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2025-01-09 13:59:05,134 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-09 13:59:05,134 INFO L85 PathProgramCache]: Analyzing trace with hash -453093429, now seen corresponding path program 1 times [2025-01-09 13:59:05,134 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-01-09 13:59:05,134 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [141259283] [2025-01-09 13:59:05,134 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-01-09 13:59:05,134 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-01-09 13:59:05,154 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 123 statements into 1 equivalence classes. [2025-01-09 13:59:05,365 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 123 of 123 statements. [2025-01-09 13:59:05,365 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-09 13:59:05,365 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unknown [2025-01-09 13:59:05,372 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [561850863] [2025-01-09 13:59:05,375 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-01-09 13:59:05,375 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2025-01-09 13:59:05,375 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-09 13:59:05,379 INFO L229 MonitoredProcess]: Starting monitored process 3 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:59:05,384 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Waiting until timeout for monitored process [2025-01-09 13:59:05,438 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 123 statements into 1 equivalence classes. [2025-01-09 13:59:05,551 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 123 of 123 statements. [2025-01-09 13:59:05,551 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-09 13:59:05,551 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-01-09 13:59:05,551 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-01-09 13:59:05,577 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 123 statements into 1 equivalence classes. [2025-01-09 13:59:05,597 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 123 of 123 statements. [2025-01-09 13:59:05,597 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-09 13:59:05,597 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-01-09 13:59:05,648 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-01-09 13:59:05,648 INFO L340 BasicCegarLoop]: Counterexample is feasible [2025-01-09 13:59:05,650 INFO L782 garLoopResultBuilder]: Registering result UNSAFE for location ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION (0 of 1 remaining) [2025-01-09 13:59:05,658 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Forceful destruction successful, exit code 0 [2025-01-09 13:59:05,852 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1,3 /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2025-01-09 13:59:05,855 INFO L422 BasicCegarLoop]: Path program histogram: [1, 1] [2025-01-09 13:59:05,910 INFO L170 ceAbstractionStarter]: Computing trace abstraction results [2025-01-09 13:59:05,912 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 09.01 01:59:05 BoogieIcfgContainer [2025-01-09 13:59:05,913 INFO L131 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2025-01-09 13:59:05,913 INFO L112 PluginConnector]: ------------------------Witness Printer---------------------------- [2025-01-09 13:59:05,913 INFO L270 PluginConnector]: Initializing Witness Printer... [2025-01-09 13:59:05,914 INFO L274 PluginConnector]: Witness Printer initialized [2025-01-09 13:59:05,914 INFO L184 PluginConnector]: Executing the observer RCFGCatcher from plugin Witness Printer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 09.01 01:59:04" (3/4) ... [2025-01-09 13:59:05,916 INFO L149 WitnessPrinter]: No result that supports witness generation found [2025-01-09 13:59:05,916 INFO L131 PluginConnector]: ------------------------ END Witness Printer---------------------------- [2025-01-09 13:59:05,917 INFO L158 Benchmark]: Toolchain (without parser) took 2214.75ms. Allocated memory is still 142.6MB. Free memory was 105.7MB in the beginning and 46.2MB in the end (delta: 59.5MB). Peak memory consumption was 56.6MB. Max. memory is 16.1GB. [2025-01-09 13:59:05,917 INFO L158 Benchmark]: CDTParser took 0.85ms. Allocated memory is still 201.3MB. Free memory is still 128.7MB. There was no memory consumed. Max. memory is 16.1GB. [2025-01-09 13:59:05,917 INFO L158 Benchmark]: CACSL2BoogieTranslator took 197.08ms. Allocated memory is still 142.6MB. Free memory was 105.7MB in the beginning and 91.5MB in the end (delta: 14.2MB). Peak memory consumption was 16.8MB. Max. memory is 16.1GB. [2025-01-09 13:59:05,917 INFO L158 Benchmark]: Boogie Procedure Inliner took 46.41ms. Allocated memory is still 142.6MB. Free memory was 91.5MB in the beginning and 88.4MB in the end (delta: 3.1MB). There was no memory consumed. Max. memory is 16.1GB. [2025-01-09 13:59:05,917 INFO L158 Benchmark]: Boogie Preprocessor took 48.14ms. Allocated memory is still 142.6MB. Free memory was 88.4MB in the beginning and 84.2MB in the end (delta: 4.3MB). There was no memory consumed. Max. memory is 16.1GB. [2025-01-09 13:59:05,918 INFO L158 Benchmark]: RCFGBuilder took 389.46ms. Allocated memory is still 142.6MB. Free memory was 84.2MB in the beginning and 63.3MB in the end (delta: 20.9MB). Peak memory consumption was 16.8MB. Max. memory is 16.1GB. [2025-01-09 13:59:05,918 INFO L158 Benchmark]: TraceAbstraction took 1523.97ms. Allocated memory is still 142.6MB. Free memory was 62.2MB in the beginning and 46.3MB in the end (delta: 15.9MB). Peak memory consumption was 23.0MB. Max. memory is 16.1GB. [2025-01-09 13:59:05,918 INFO L158 Benchmark]: Witness Printer took 2.83ms. Allocated memory is still 142.6MB. Free memory was 46.3MB in the beginning and 46.2MB in the end (delta: 41.6kB). There was no memory consumed. Max. memory is 16.1GB. [2025-01-09 13:59:05,919 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.85ms. Allocated memory is still 201.3MB. Free memory is still 128.7MB. There was no memory consumed. Max. memory is 16.1GB. * CACSL2BoogieTranslator took 197.08ms. Allocated memory is still 142.6MB. Free memory was 105.7MB in the beginning and 91.5MB in the end (delta: 14.2MB). Peak memory consumption was 16.8MB. Max. memory is 16.1GB. * Boogie Procedure Inliner took 46.41ms. Allocated memory is still 142.6MB. Free memory was 91.5MB in the beginning and 88.4MB in the end (delta: 3.1MB). There was no memory consumed. Max. memory is 16.1GB. * Boogie Preprocessor took 48.14ms. Allocated memory is still 142.6MB. Free memory was 88.4MB in the beginning and 84.2MB in the end (delta: 4.3MB). There was no memory consumed. Max. memory is 16.1GB. * RCFGBuilder took 389.46ms. Allocated memory is still 142.6MB. Free memory was 84.2MB in the beginning and 63.3MB in the end (delta: 20.9MB). Peak memory consumption was 16.8MB. Max. memory is 16.1GB. * TraceAbstraction took 1523.97ms. Allocated memory is still 142.6MB. Free memory was 62.2MB in the beginning and 46.3MB in the end (delta: 15.9MB). Peak memory consumption was 23.0MB. Max. memory is 16.1GB. * Witness Printer took 2.83ms. Allocated memory is still 142.6MB. Free memory was 46.3MB in the beginning and 46.2MB 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 93, overapproximation of someBinaryFLOATComparisonOperation at line 129, overapproximation of someBinaryFLOATComparisonOperation at line 100, overapproximation of someBinaryFLOATComparisonOperation at line 66, overapproximation of someBinaryFLOATComparisonOperation at line 95, overapproximation of someBinaryFLOATComparisonOperation at line 58. Possible FailurePath: [L21] unsigned char isInitial = 0; [L22] unsigned short int var_1_1 = 2; [L23] float var_1_2 = 255.5; [L24] float var_1_3 = 99.8; [L25] signed char var_1_4 = -25; [L26] float var_1_6 = 255.25; [L27] unsigned short int var_1_7 = 16; [L28] signed char var_1_8 = -10; [L29] signed char var_1_9 = -8; [L30] unsigned short int var_1_10 = 8; [L31] unsigned short int var_1_11 = 10000; [L32] unsigned short int var_1_12 = 5; [L33] signed short int var_1_13 = 200; [L34] unsigned char var_1_15 = 0; [L35] unsigned short int var_1_16 = 35895; [L36] unsigned short int var_1_17 = 18336; [L37] unsigned char var_1_18 = 0; [L38] signed long int var_1_19 = -50; [L39] signed char last_1_var_1_8 = -10; [L40] unsigned char last_1_var_1_15 = 0; [L41] signed long int last_1_var_1_19 = -50; VAL [isInitial=0, last_1_var_1_15=0, last_1_var_1_19=-50, last_1_var_1_8=-10, var_1_10=8, var_1_11=10000, var_1_12=5, var_1_13=200, var_1_15=0, var_1_16=35895, var_1_17=18336, var_1_18=0, var_1_19=-50, var_1_1=2, var_1_2=511/2, var_1_3=499/5, var_1_4=-25, var_1_6=1021/4, var_1_7=16, var_1_8=-10, var_1_9=-8] [L133] isInitial = 1 [L134] FCALL initially() [L136] CALL updateLastVariables() [L124] last_1_var_1_8 = var_1_8 [L125] last_1_var_1_15 = var_1_15 [L126] last_1_var_1_19 = var_1_19 VAL [isInitial=1, last_1_var_1_15=0, last_1_var_1_19=-50, last_1_var_1_8=-10, var_1_10=8, var_1_11=10000, var_1_12=5, var_1_13=200, var_1_15=0, var_1_16=35895, var_1_17=18336, var_1_18=0, var_1_19=-50, var_1_1=2, var_1_2=511/2, var_1_3=499/5, var_1_4=-25, var_1_6=1021/4, var_1_7=16, var_1_8=-10, var_1_9=-8] [L136] RET updateLastVariables() [L137] CALL updateVariables() [L92] var_1_2 = __VERIFIER_nondet_float() [L93] CALL assume_abort_if_not((var_1_2 >= -922337.2036854776000e+13F && var_1_2 <= -1.0e-20F) || (var_1_2 <= 9223372.036854776000e+12F && var_1_2 >= 1.0e-20F )) VAL [\old(cond)=1, isInitial=1, last_1_var_1_15=0, last_1_var_1_19=-50, last_1_var_1_8=-10, var_1_10=8, var_1_11=10000, var_1_12=5, var_1_13=200, var_1_15=0, var_1_16=35895, var_1_17=18336, var_1_18=0, var_1_19=-50, var_1_1=2, var_1_3=499/5, var_1_4=-25, var_1_6=1021/4, var_1_7=16, var_1_8=-10, var_1_9=-8] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_15=0, last_1_var_1_19=-50, last_1_var_1_8=-10, var_1_10=8, var_1_11=10000, var_1_12=5, var_1_13=200, var_1_15=0, var_1_16=35895, var_1_17=18336, var_1_18=0, var_1_19=-50, var_1_1=2, var_1_3=499/5, var_1_4=-25, var_1_6=1021/4, var_1_7=16, var_1_8=-10, var_1_9=-8] [L93] RET assume_abort_if_not((var_1_2 >= -922337.2036854776000e+13F && var_1_2 <= -1.0e-20F) || (var_1_2 <= 9223372.036854776000e+12F && var_1_2 >= 1.0e-20F )) VAL [isInitial=1, last_1_var_1_15=0, last_1_var_1_19=-50, last_1_var_1_8=-10, var_1_10=8, var_1_11=10000, var_1_12=5, var_1_13=200, var_1_15=0, var_1_16=35895, var_1_17=18336, var_1_18=0, var_1_19=-50, var_1_1=2, var_1_3=499/5, var_1_4=-25, var_1_6=1021/4, var_1_7=16, var_1_8=-10, var_1_9=-8] [L94] var_1_3 = __VERIFIER_nondet_float() [L95] CALL assume_abort_if_not((var_1_3 >= -922337.2036854776000e+13F && var_1_3 <= -1.0e-20F) || (var_1_3 <= 9223372.036854776000e+12F && var_1_3 >= 1.0e-20F )) VAL [\old(cond)=1, isInitial=1, last_1_var_1_15=0, last_1_var_1_19=-50, last_1_var_1_8=-10, var_1_10=8, var_1_11=10000, var_1_12=5, var_1_13=200, var_1_15=0, var_1_16=35895, var_1_17=18336, var_1_18=0, var_1_19=-50, var_1_1=2, var_1_4=-25, var_1_6=1021/4, var_1_7=16, var_1_8=-10, var_1_9=-8] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_15=0, last_1_var_1_19=-50, last_1_var_1_8=-10, var_1_10=8, var_1_11=10000, var_1_12=5, var_1_13=200, var_1_15=0, var_1_16=35895, var_1_17=18336, var_1_18=0, var_1_19=-50, var_1_1=2, var_1_4=-25, var_1_6=1021/4, var_1_7=16, var_1_8=-10, var_1_9=-8] [L95] RET assume_abort_if_not((var_1_3 >= -922337.2036854776000e+13F && var_1_3 <= -1.0e-20F) || (var_1_3 <= 9223372.036854776000e+12F && var_1_3 >= 1.0e-20F )) VAL [isInitial=1, last_1_var_1_15=0, last_1_var_1_19=-50, last_1_var_1_8=-10, var_1_10=8, var_1_11=10000, var_1_12=5, var_1_13=200, var_1_15=0, var_1_16=35895, var_1_17=18336, var_1_18=0, var_1_19=-50, var_1_1=2, var_1_4=-25, var_1_6=1021/4, var_1_7=16, var_1_8=-10, var_1_9=-8] [L96] var_1_4 = __VERIFIER_nondet_char() [L97] CALL assume_abort_if_not(var_1_4 >= -127) VAL [\old(cond)=1, isInitial=1, last_1_var_1_15=0, last_1_var_1_19=-50, last_1_var_1_8=-10, var_1_10=8, var_1_11=10000, var_1_12=5, var_1_13=200, var_1_15=0, var_1_16=35895, var_1_17=18336, var_1_18=0, var_1_19=-50, var_1_1=2, var_1_4=1, var_1_6=1021/4, var_1_7=16, var_1_8=-10, var_1_9=-8] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_15=0, last_1_var_1_19=-50, last_1_var_1_8=-10, var_1_10=8, var_1_11=10000, var_1_12=5, var_1_13=200, var_1_15=0, var_1_16=35895, var_1_17=18336, var_1_18=0, var_1_19=-50, var_1_1=2, var_1_4=1, var_1_6=1021/4, var_1_7=16, var_1_8=-10, var_1_9=-8] [L97] RET assume_abort_if_not(var_1_4 >= -127) VAL [isInitial=1, last_1_var_1_15=0, last_1_var_1_19=-50, last_1_var_1_8=-10, var_1_10=8, var_1_11=10000, var_1_12=5, var_1_13=200, var_1_15=0, var_1_16=35895, var_1_17=18336, var_1_18=0, var_1_19=-50, var_1_1=2, var_1_4=1, var_1_6=1021/4, var_1_7=16, var_1_8=-10, var_1_9=-8] [L98] CALL assume_abort_if_not(var_1_4 <= 127) VAL [\old(cond)=1, isInitial=1, last_1_var_1_15=0, last_1_var_1_19=-50, last_1_var_1_8=-10, var_1_10=8, var_1_11=10000, var_1_12=5, var_1_13=200, var_1_15=0, var_1_16=35895, var_1_17=18336, var_1_18=0, var_1_19=-50, var_1_1=2, var_1_4=1, var_1_6=1021/4, var_1_7=16, var_1_8=-10, var_1_9=-8] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_15=0, last_1_var_1_19=-50, last_1_var_1_8=-10, var_1_10=8, var_1_11=10000, var_1_12=5, var_1_13=200, var_1_15=0, var_1_16=35895, var_1_17=18336, var_1_18=0, var_1_19=-50, var_1_1=2, var_1_4=1, var_1_6=1021/4, var_1_7=16, var_1_8=-10, var_1_9=-8] [L98] RET assume_abort_if_not(var_1_4 <= 127) VAL [isInitial=1, last_1_var_1_15=0, last_1_var_1_19=-50, last_1_var_1_8=-10, var_1_10=8, var_1_11=10000, var_1_12=5, var_1_13=200, var_1_15=0, var_1_16=35895, var_1_17=18336, var_1_18=0, var_1_19=-50, var_1_1=2, var_1_4=1, var_1_6=1021/4, var_1_7=16, var_1_8=-10, var_1_9=-8] [L99] var_1_6 = __VERIFIER_nondet_float() [L100] CALL assume_abort_if_not((var_1_6 >= -922337.2036854776000e+13F && var_1_6 <= -1.0e-20F) || (var_1_6 <= 9223372.036854776000e+12F && var_1_6 >= 1.0e-20F )) VAL [\old(cond)=1, isInitial=1, last_1_var_1_15=0, last_1_var_1_19=-50, last_1_var_1_8=-10, var_1_10=8, var_1_11=10000, var_1_12=5, var_1_13=200, var_1_15=0, var_1_16=35895, var_1_17=18336, var_1_18=0, var_1_19=-50, var_1_1=2, var_1_4=1, var_1_7=16, var_1_8=-10, var_1_9=-8] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_15=0, last_1_var_1_19=-50, last_1_var_1_8=-10, var_1_10=8, var_1_11=10000, var_1_12=5, var_1_13=200, var_1_15=0, var_1_16=35895, var_1_17=18336, var_1_18=0, var_1_19=-50, var_1_1=2, var_1_4=1, var_1_7=16, var_1_8=-10, var_1_9=-8] [L100] RET assume_abort_if_not((var_1_6 >= -922337.2036854776000e+13F && var_1_6 <= -1.0e-20F) || (var_1_6 <= 9223372.036854776000e+12F && var_1_6 >= 1.0e-20F )) VAL [isInitial=1, last_1_var_1_15=0, last_1_var_1_19=-50, last_1_var_1_8=-10, var_1_10=8, var_1_11=10000, var_1_12=5, var_1_13=200, var_1_15=0, var_1_16=35895, var_1_17=18336, var_1_18=0, var_1_19=-50, var_1_1=2, var_1_4=1, var_1_7=16, var_1_8=-10, var_1_9=-8] [L101] var_1_7 = __VERIFIER_nondet_ushort() [L102] CALL assume_abort_if_not(var_1_7 >= 0) VAL [\old(cond)=1, isInitial=1, last_1_var_1_15=0, last_1_var_1_19=-50, last_1_var_1_8=-10, var_1_10=8, var_1_11=10000, var_1_12=5, var_1_13=200, var_1_15=0, var_1_16=35895, var_1_17=18336, var_1_18=0, var_1_19=-50, var_1_1=2, var_1_4=1, var_1_8=-10, var_1_9=-8] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_15=0, last_1_var_1_19=-50, last_1_var_1_8=-10, var_1_10=8, var_1_11=10000, var_1_12=5, var_1_13=200, var_1_15=0, var_1_16=35895, var_1_17=18336, var_1_18=0, var_1_19=-50, var_1_1=2, var_1_4=1, var_1_8=-10, var_1_9=-8] [L102] RET assume_abort_if_not(var_1_7 >= 0) VAL [isInitial=1, last_1_var_1_15=0, last_1_var_1_19=-50, last_1_var_1_8=-10, var_1_10=8, var_1_11=10000, var_1_12=5, var_1_13=200, var_1_15=0, var_1_16=35895, var_1_17=18336, var_1_18=0, var_1_19=-50, var_1_1=2, var_1_4=1, var_1_8=-10, var_1_9=-8] [L103] CALL assume_abort_if_not(var_1_7 <= 65534) VAL [\old(cond)=1, isInitial=1, last_1_var_1_15=0, last_1_var_1_19=-50, last_1_var_1_8=-10, var_1_10=8, var_1_11=10000, var_1_12=5, var_1_13=200, var_1_15=0, var_1_16=35895, var_1_17=18336, var_1_18=0, var_1_19=-50, var_1_1=2, var_1_4=1, var_1_7=1, var_1_8=-10, var_1_9=-8] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_15=0, last_1_var_1_19=-50, last_1_var_1_8=-10, var_1_10=8, var_1_11=10000, var_1_12=5, var_1_13=200, var_1_15=0, var_1_16=35895, var_1_17=18336, var_1_18=0, var_1_19=-50, var_1_1=2, var_1_4=1, var_1_7=1, var_1_8=-10, var_1_9=-8] [L103] RET assume_abort_if_not(var_1_7 <= 65534) VAL [isInitial=1, last_1_var_1_15=0, last_1_var_1_19=-50, last_1_var_1_8=-10, var_1_10=8, var_1_11=10000, var_1_12=5, var_1_13=200, var_1_15=0, var_1_16=35895, var_1_17=18336, var_1_18=0, var_1_19=-50, var_1_1=2, var_1_4=1, var_1_7=1, var_1_8=-10, var_1_9=-8] [L104] var_1_9 = __VERIFIER_nondet_char() [L105] CALL assume_abort_if_not(var_1_9 >= -127) VAL [\old(cond)=1, isInitial=1, last_1_var_1_15=0, last_1_var_1_19=-50, last_1_var_1_8=-10, var_1_10=8, var_1_11=10000, var_1_12=5, var_1_13=200, var_1_15=0, var_1_16=35895, var_1_17=18336, var_1_18=0, var_1_19=-50, var_1_1=2, var_1_4=1, var_1_7=1, var_1_8=-10, var_1_9=1] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_15=0, last_1_var_1_19=-50, last_1_var_1_8=-10, var_1_10=8, var_1_11=10000, var_1_12=5, var_1_13=200, var_1_15=0, var_1_16=35895, var_1_17=18336, var_1_18=0, var_1_19=-50, var_1_1=2, var_1_4=1, var_1_7=1, var_1_8=-10, var_1_9=1] [L105] RET assume_abort_if_not(var_1_9 >= -127) VAL [isInitial=1, last_1_var_1_15=0, last_1_var_1_19=-50, last_1_var_1_8=-10, var_1_10=8, var_1_11=10000, var_1_12=5, var_1_13=200, var_1_15=0, var_1_16=35895, var_1_17=18336, var_1_18=0, var_1_19=-50, var_1_1=2, var_1_4=1, var_1_7=1, var_1_8=-10, var_1_9=1] [L106] CALL assume_abort_if_not(var_1_9 <= 126) VAL [\old(cond)=1, isInitial=1, last_1_var_1_15=0, last_1_var_1_19=-50, last_1_var_1_8=-10, var_1_10=8, var_1_11=10000, var_1_12=5, var_1_13=200, var_1_15=0, var_1_16=35895, var_1_17=18336, var_1_18=0, var_1_19=-50, var_1_1=2, var_1_4=1, var_1_7=1, var_1_8=-10, var_1_9=1] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_15=0, last_1_var_1_19=-50, last_1_var_1_8=-10, var_1_10=8, var_1_11=10000, var_1_12=5, var_1_13=200, var_1_15=0, var_1_16=35895, var_1_17=18336, var_1_18=0, var_1_19=-50, var_1_1=2, var_1_4=1, var_1_7=1, var_1_8=-10, var_1_9=1] [L106] RET assume_abort_if_not(var_1_9 <= 126) VAL [isInitial=1, last_1_var_1_15=0, last_1_var_1_19=-50, last_1_var_1_8=-10, var_1_10=8, var_1_11=10000, var_1_12=5, var_1_13=200, var_1_15=0, var_1_16=35895, var_1_17=18336, var_1_18=0, var_1_19=-50, var_1_1=2, var_1_4=1, var_1_7=1, var_1_8=-10, var_1_9=1] [L107] var_1_11 = __VERIFIER_nondet_ushort() [L108] CALL assume_abort_if_not(var_1_11 >= 8191) VAL [\old(cond)=1, isInitial=1, last_1_var_1_15=0, last_1_var_1_19=-50, last_1_var_1_8=-10, var_1_10=8, var_1_11=8191, var_1_12=5, var_1_13=200, var_1_15=0, var_1_16=35895, var_1_17=18336, var_1_18=0, var_1_19=-50, var_1_1=2, var_1_4=1, var_1_7=1, var_1_8=-10, var_1_9=1] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_15=0, last_1_var_1_19=-50, last_1_var_1_8=-10, var_1_10=8, var_1_11=8191, var_1_12=5, var_1_13=200, var_1_15=0, var_1_16=35895, var_1_17=18336, var_1_18=0, var_1_19=-50, var_1_1=2, var_1_4=1, var_1_7=1, var_1_8=-10, var_1_9=1] [L108] RET assume_abort_if_not(var_1_11 >= 8191) VAL [isInitial=1, last_1_var_1_15=0, last_1_var_1_19=-50, last_1_var_1_8=-10, var_1_10=8, var_1_11=8191, var_1_12=5, var_1_13=200, var_1_15=0, var_1_16=35895, var_1_17=18336, var_1_18=0, var_1_19=-50, var_1_1=2, var_1_4=1, var_1_7=1, var_1_8=-10, var_1_9=1] [L109] CALL assume_abort_if_not(var_1_11 <= 16384) VAL [\old(cond)=1, isInitial=1, last_1_var_1_15=0, last_1_var_1_19=-50, last_1_var_1_8=-10, var_1_10=8, var_1_11=8191, var_1_12=5, var_1_13=200, var_1_15=0, var_1_16=35895, var_1_17=18336, var_1_18=0, var_1_19=-50, var_1_1=2, var_1_4=1, var_1_7=1, var_1_8=-10, var_1_9=1] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_15=0, last_1_var_1_19=-50, last_1_var_1_8=-10, var_1_10=8, var_1_11=8191, var_1_12=5, var_1_13=200, var_1_15=0, var_1_16=35895, var_1_17=18336, var_1_18=0, var_1_19=-50, var_1_1=2, var_1_4=1, var_1_7=1, var_1_8=-10, var_1_9=1] [L109] RET assume_abort_if_not(var_1_11 <= 16384) VAL [isInitial=1, last_1_var_1_15=0, last_1_var_1_19=-50, last_1_var_1_8=-10, var_1_10=8, var_1_11=8191, var_1_12=5, var_1_13=200, var_1_15=0, var_1_16=35895, var_1_17=18336, var_1_18=0, var_1_19=-50, var_1_1=2, var_1_4=1, var_1_7=1, var_1_8=-10, var_1_9=1] [L110] var_1_12 = __VERIFIER_nondet_ushort() [L111] CALL assume_abort_if_not(var_1_12 >= 0) VAL [\old(cond)=1, isInitial=1, last_1_var_1_15=0, last_1_var_1_19=-50, last_1_var_1_8=-10, var_1_10=8, var_1_11=8191, var_1_13=200, var_1_15=0, var_1_16=35895, var_1_17=18336, var_1_18=0, var_1_19=-50, var_1_1=2, var_1_4=1, var_1_7=1, var_1_8=-10, var_1_9=1] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_15=0, last_1_var_1_19=-50, last_1_var_1_8=-10, var_1_10=8, var_1_11=8191, var_1_13=200, var_1_15=0, var_1_16=35895, var_1_17=18336, var_1_18=0, var_1_19=-50, var_1_1=2, var_1_4=1, var_1_7=1, var_1_8=-10, var_1_9=1] [L111] RET assume_abort_if_not(var_1_12 >= 0) VAL [isInitial=1, last_1_var_1_15=0, last_1_var_1_19=-50, last_1_var_1_8=-10, var_1_10=8, var_1_11=8191, var_1_13=200, var_1_15=0, var_1_16=35895, var_1_17=18336, var_1_18=0, var_1_19=-50, var_1_1=2, var_1_4=1, var_1_7=1, var_1_8=-10, var_1_9=1] [L112] CALL assume_abort_if_not(var_1_12 <= 16383) VAL [\old(cond)=1, isInitial=1, last_1_var_1_15=0, last_1_var_1_19=-50, last_1_var_1_8=-10, var_1_10=8, var_1_11=8191, var_1_12=-63678, var_1_13=200, var_1_15=0, var_1_16=35895, var_1_17=18336, var_1_18=0, var_1_19=-50, var_1_1=2, var_1_4=1, var_1_7=1, var_1_8=-10, var_1_9=1] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_15=0, last_1_var_1_19=-50, last_1_var_1_8=-10, var_1_10=8, var_1_11=8191, var_1_12=-63678, var_1_13=200, var_1_15=0, var_1_16=35895, var_1_17=18336, var_1_18=0, var_1_19=-50, var_1_1=2, var_1_4=1, var_1_7=1, var_1_8=-10, var_1_9=1] [L112] RET assume_abort_if_not(var_1_12 <= 16383) VAL [isInitial=1, last_1_var_1_15=0, last_1_var_1_19=-50, last_1_var_1_8=-10, var_1_10=8, var_1_11=8191, var_1_12=-63678, var_1_13=200, var_1_15=0, var_1_16=35895, var_1_17=18336, var_1_18=0, var_1_19=-50, var_1_1=2, var_1_4=1, var_1_7=1, var_1_8=-10, var_1_9=1] [L113] var_1_16 = __VERIFIER_nondet_ushort() [L114] CALL assume_abort_if_not(var_1_16 >= 32767) VAL [\old(cond)=1, isInitial=1, last_1_var_1_15=0, last_1_var_1_19=-50, last_1_var_1_8=-10, var_1_10=8, var_1_11=8191, var_1_12=-63678, var_1_13=200, var_1_15=0, var_1_16=32767, var_1_17=18336, var_1_18=0, var_1_19=-50, var_1_1=2, var_1_4=1, var_1_7=1, var_1_8=-10, var_1_9=1] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_15=0, last_1_var_1_19=-50, last_1_var_1_8=-10, var_1_10=8, var_1_11=8191, var_1_12=-63678, var_1_13=200, var_1_15=0, var_1_16=32767, var_1_17=18336, var_1_18=0, var_1_19=-50, var_1_1=2, var_1_4=1, var_1_7=1, var_1_8=-10, var_1_9=1] [L114] RET assume_abort_if_not(var_1_16 >= 32767) VAL [isInitial=1, last_1_var_1_15=0, last_1_var_1_19=-50, last_1_var_1_8=-10, var_1_10=8, var_1_11=8191, var_1_12=-63678, var_1_13=200, var_1_15=0, var_1_16=32767, var_1_17=18336, var_1_18=0, var_1_19=-50, var_1_1=2, var_1_4=1, var_1_7=1, var_1_8=-10, var_1_9=1] [L115] CALL assume_abort_if_not(var_1_16 <= 65535) VAL [\old(cond)=1, isInitial=1, last_1_var_1_15=0, last_1_var_1_19=-50, last_1_var_1_8=-10, var_1_10=8, var_1_11=8191, var_1_12=-63678, var_1_13=200, var_1_15=0, var_1_16=32767, var_1_17=18336, var_1_18=0, var_1_19=-50, var_1_1=2, var_1_4=1, var_1_7=1, var_1_8=-10, var_1_9=1] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_15=0, last_1_var_1_19=-50, last_1_var_1_8=-10, var_1_10=8, var_1_11=8191, var_1_12=-63678, var_1_13=200, var_1_15=0, var_1_16=32767, var_1_17=18336, var_1_18=0, var_1_19=-50, var_1_1=2, var_1_4=1, var_1_7=1, var_1_8=-10, var_1_9=1] [L115] RET assume_abort_if_not(var_1_16 <= 65535) VAL [isInitial=1, last_1_var_1_15=0, last_1_var_1_19=-50, last_1_var_1_8=-10, var_1_10=8, var_1_11=8191, var_1_12=-63678, var_1_13=200, var_1_15=0, var_1_16=32767, var_1_17=18336, var_1_18=0, var_1_19=-50, var_1_1=2, var_1_4=1, var_1_7=1, var_1_8=-10, var_1_9=1] [L116] var_1_17 = __VERIFIER_nondet_ushort() [L117] CALL assume_abort_if_not(var_1_17 >= 16383) VAL [\old(cond)=1, isInitial=1, last_1_var_1_15=0, last_1_var_1_19=-50, last_1_var_1_8=-10, var_1_10=8, var_1_11=8191, var_1_12=-63678, var_1_13=200, var_1_15=0, var_1_16=32767, var_1_17=16384, var_1_18=0, var_1_19=-50, var_1_1=2, var_1_4=1, var_1_7=1, var_1_8=-10, var_1_9=1] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_15=0, last_1_var_1_19=-50, last_1_var_1_8=-10, var_1_10=8, var_1_11=8191, var_1_12=-63678, var_1_13=200, var_1_15=0, var_1_16=32767, var_1_17=16384, var_1_18=0, var_1_19=-50, var_1_1=2, var_1_4=1, var_1_7=1, var_1_8=-10, var_1_9=1] [L117] RET assume_abort_if_not(var_1_17 >= 16383) VAL [isInitial=1, last_1_var_1_15=0, last_1_var_1_19=-50, last_1_var_1_8=-10, var_1_10=8, var_1_11=8191, var_1_12=-63678, var_1_13=200, var_1_15=0, var_1_16=32767, var_1_17=16384, var_1_18=0, var_1_19=-50, var_1_1=2, var_1_4=1, var_1_7=1, var_1_8=-10, var_1_9=1] [L118] CALL assume_abort_if_not(var_1_17 <= 32767) VAL [\old(cond)=1, isInitial=1, last_1_var_1_15=0, last_1_var_1_19=-50, last_1_var_1_8=-10, var_1_10=8, var_1_11=8191, var_1_12=-63678, var_1_13=200, var_1_15=0, var_1_16=32767, var_1_17=16384, var_1_18=0, var_1_19=-50, var_1_1=2, var_1_4=1, var_1_7=1, var_1_8=-10, var_1_9=1] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_15=0, last_1_var_1_19=-50, last_1_var_1_8=-10, var_1_10=8, var_1_11=8191, var_1_12=-63678, var_1_13=200, var_1_15=0, var_1_16=32767, var_1_17=16384, var_1_18=0, var_1_19=-50, var_1_1=2, var_1_4=1, var_1_7=1, var_1_8=-10, var_1_9=1] [L118] RET assume_abort_if_not(var_1_17 <= 32767) VAL [isInitial=1, last_1_var_1_15=0, last_1_var_1_19=-50, last_1_var_1_8=-10, var_1_10=8, var_1_11=8191, var_1_12=-63678, var_1_13=200, var_1_15=0, var_1_16=32767, var_1_17=16384, var_1_18=0, var_1_19=-50, var_1_1=2, var_1_4=1, var_1_7=1, var_1_8=-10, var_1_9=1] [L119] var_1_18 = __VERIFIER_nondet_uchar() [L120] CALL assume_abort_if_not(var_1_18 >= 0) VAL [\old(cond)=1, isInitial=1, last_1_var_1_15=0, last_1_var_1_19=-50, last_1_var_1_8=-10, var_1_10=8, var_1_11=8191, var_1_12=-63678, var_1_13=200, var_1_15=0, var_1_16=32767, var_1_17=16384, var_1_19=-50, var_1_1=2, var_1_4=1, var_1_7=1, var_1_8=-10, var_1_9=1] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_15=0, last_1_var_1_19=-50, last_1_var_1_8=-10, var_1_10=8, var_1_11=8191, var_1_12=-63678, var_1_13=200, var_1_15=0, var_1_16=32767, var_1_17=16384, var_1_19=-50, var_1_1=2, var_1_4=1, var_1_7=1, var_1_8=-10, var_1_9=1] [L120] RET assume_abort_if_not(var_1_18 >= 0) VAL [isInitial=1, last_1_var_1_15=0, last_1_var_1_19=-50, last_1_var_1_8=-10, var_1_10=8, var_1_11=8191, var_1_12=-63678, var_1_13=200, var_1_15=0, var_1_16=32767, var_1_17=16384, var_1_19=-50, var_1_1=2, var_1_4=1, var_1_7=1, var_1_8=-10, var_1_9=1] [L121] CALL assume_abort_if_not(var_1_18 <= 0) VAL [\old(cond)=1, isInitial=1, last_1_var_1_15=0, last_1_var_1_19=-50, last_1_var_1_8=-10, var_1_10=8, var_1_11=8191, var_1_12=-63678, var_1_13=200, var_1_15=0, var_1_16=32767, var_1_17=16384, var_1_18=0, var_1_19=-50, var_1_1=2, var_1_4=1, var_1_7=1, var_1_8=-10, var_1_9=1] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_15=0, last_1_var_1_19=-50, last_1_var_1_8=-10, var_1_10=8, var_1_11=8191, var_1_12=-63678, var_1_13=200, var_1_15=0, var_1_16=32767, var_1_17=16384, var_1_18=0, var_1_19=-50, var_1_1=2, var_1_4=1, var_1_7=1, var_1_8=-10, var_1_9=1] [L121] RET assume_abort_if_not(var_1_18 <= 0) VAL [isInitial=1, last_1_var_1_15=0, last_1_var_1_19=-50, last_1_var_1_8=-10, var_1_10=8, var_1_11=8191, var_1_12=-63678, var_1_13=200, var_1_15=0, var_1_16=32767, var_1_17=16384, var_1_18=0, var_1_19=-50, var_1_1=2, var_1_4=1, var_1_7=1, var_1_8=-10, var_1_9=1] [L137] RET updateVariables() [L138] CALL step() [L45] signed long int stepLocal_0 = (((var_1_4) < 0 ) ? -(var_1_4) : (var_1_4)); VAL [isInitial=1, last_1_var_1_15=0, last_1_var_1_19=-50, last_1_var_1_8=-10, stepLocal_0=1, var_1_10=8, var_1_11=8191, var_1_12=-63678, var_1_13=200, var_1_15=0, var_1_16=32767, var_1_17=16384, var_1_18=0, var_1_19=-50, var_1_1=2, var_1_4=1, var_1_7=1, var_1_8=-10, var_1_9=1] [L46] COND FALSE !(stepLocal_0 <= last_1_var_1_8) [L53] var_1_1 = var_1_7 VAL [isInitial=1, last_1_var_1_15=0, last_1_var_1_19=-50, last_1_var_1_8=-10, var_1_10=8, var_1_11=8191, var_1_12=-63678, var_1_13=200, var_1_15=0, var_1_16=32767, var_1_17=16384, var_1_18=0, var_1_19=-50, var_1_1=1, var_1_4=1, var_1_7=1, var_1_8=-10, var_1_9=1] [L55] COND TRUE (- var_1_7) < (var_1_1 * var_1_4) [L56] var_1_8 = var_1_9 VAL [isInitial=1, last_1_var_1_15=0, last_1_var_1_19=-50, last_1_var_1_8=-10, var_1_10=8, var_1_11=8191, var_1_12=-63678, var_1_13=200, var_1_15=0, var_1_16=32767, var_1_17=16384, var_1_18=0, var_1_19=-50, var_1_1=1, var_1_4=1, var_1_7=1, var_1_8=1, var_1_9=1] [L58] COND FALSE !((var_1_6 * var_1_2) <= var_1_3) VAL [isInitial=1, last_1_var_1_15=0, last_1_var_1_19=-50, last_1_var_1_8=-10, var_1_10=8, var_1_11=8191, var_1_12=-63678, var_1_13=200, var_1_15=0, var_1_16=32767, var_1_17=16384, var_1_18=0, var_1_19=-50, var_1_1=1, var_1_4=1, var_1_7=1, var_1_8=1, var_1_9=1] [L65] signed long int stepLocal_1 = var_1_16 - (var_1_17 - 256); VAL [isInitial=1, last_1_var_1_15=0, last_1_var_1_19=-50, last_1_var_1_8=-10, stepLocal_1=16639, var_1_10=8, var_1_11=8191, var_1_12=-63678, var_1_13=200, var_1_15=0, var_1_16=32767, var_1_17=16384, var_1_18=0, var_1_19=-50, var_1_1=1, var_1_4=1, var_1_7=1, var_1_8=1, var_1_9=1] [L66] COND FALSE !(var_1_3 != var_1_6) [L73] var_1_15 = var_1_18 VAL [isInitial=1, last_1_var_1_15=0, last_1_var_1_19=-50, last_1_var_1_8=-10, stepLocal_1=16639, var_1_10=8, var_1_11=8191, var_1_12=-63678, var_1_13=200, var_1_15=0, var_1_16=32767, var_1_17=16384, var_1_18=0, var_1_19=-50, var_1_1=1, var_1_4=1, var_1_7=1, var_1_8=1, var_1_9=1] [L75] var_1_10 = (50 + ((var_1_11 + 10000) - var_1_12)) [L76] unsigned short int stepLocal_4 = var_1_1; [L77] signed long int stepLocal_3 = var_1_7 + (128 + var_1_1); [L78] signed long int stepLocal_2 = - var_1_10; VAL [isInitial=1, last_1_var_1_15=0, last_1_var_1_19=-50, last_1_var_1_8=-10, stepLocal_1=16639, stepLocal_2=-16383, stepLocal_3=130, stepLocal_4=1, var_1_10=16383, var_1_11=8191, var_1_12=-63678, var_1_13=200, var_1_15=0, var_1_16=32767, var_1_17=16384, var_1_18=0, var_1_19=-50, var_1_1=1, var_1_4=1, var_1_7=1, var_1_8=1, var_1_9=1] [L79] COND FALSE !(var_1_1 < stepLocal_2) VAL [isInitial=1, last_1_var_1_15=0, last_1_var_1_19=-50, last_1_var_1_8=-10, stepLocal_1=16639, stepLocal_3=130, stepLocal_4=1, var_1_10=16383, var_1_11=8191, var_1_12=-63678, var_1_13=200, var_1_15=0, var_1_16=32767, var_1_17=16384, var_1_18=0, var_1_19=-50, var_1_1=1, var_1_4=1, var_1_7=1, var_1_8=1, var_1_9=1] [L84] COND TRUE stepLocal_4 < (((((var_1_10) < (var_1_17)) ? (var_1_10) : (var_1_17))) / var_1_11) [L85] var_1_19 = ((((var_1_7) > (var_1_9)) ? (var_1_7) : (var_1_9))) VAL [isInitial=1, last_1_var_1_15=0, last_1_var_1_19=-50, last_1_var_1_8=-10, stepLocal_1=16639, stepLocal_3=130, var_1_10=16383, var_1_11=8191, var_1_12=-63678, var_1_13=200, var_1_15=0, var_1_16=32767, var_1_17=16384, var_1_18=0, var_1_19=1, var_1_1=1, var_1_4=1, var_1_7=1, var_1_8=1, var_1_9=1] [L138] RET step() [L139] CALL, EXPR property() [L129-L130] return ((((((((((var_1_4) < 0 ) ? -(var_1_4) : (var_1_4))) <= last_1_var_1_8) ? (((- var_1_3) > ((((var_1_2) > (var_1_6)) ? (var_1_2) : (var_1_6)))) ? (var_1_1 == ((unsigned short int) var_1_7)) : (var_1_1 == ((unsigned short int) var_1_7))) : (var_1_1 == ((unsigned short int) var_1_7))) && (((- var_1_7) < (var_1_1 * var_1_4)) ? (var_1_8 == ((signed char) var_1_9)) : 1)) && (var_1_10 == ((unsigned short int) (50 + ((var_1_11 + 10000) - var_1_12))))) && (((var_1_6 * var_1_2) <= var_1_3) ? (last_1_var_1_15 ? (var_1_13 == ((signed short int) (-10 + var_1_12))) : (var_1_13 == ((signed short int) var_1_4))) : 1)) && ((var_1_3 != var_1_6) ? ((var_1_13 >= (var_1_16 - (var_1_17 - 256))) ? (var_1_15 == ((unsigned char) var_1_18)) : (var_1_15 == ((unsigned char) var_1_18))) : (var_1_15 == ((unsigned char) var_1_18)))) && ((var_1_1 < (- var_1_10)) ? (((var_1_7 + (128 + var_1_1)) <= last_1_var_1_19) ? (var_1_19 == ((signed long int) var_1_4)) : 1) : ((var_1_1 < (((((var_1_10) < (var_1_17)) ? (var_1_10) : (var_1_17))) / var_1_11)) ? (var_1_19 == ((signed long int) ((((var_1_7) > (var_1_9)) ? (var_1_7) : (var_1_9))))) : (var_1_19 == ((signed long int) var_1_16)))) ; VAL [\result=0, isInitial=1, last_1_var_1_15=0, last_1_var_1_19=-50, last_1_var_1_8=-10, var_1_10=16383, var_1_11=8191, var_1_12=-63678, var_1_13=200, var_1_15=0, var_1_16=32767, var_1_17=16384, var_1_18=0, var_1_19=1, var_1_1=1, var_1_4=1, var_1_7=1, var_1_8=1, var_1_9=1] [L139] RET, EXPR property() [L139] CALL __VERIFIER_assert(property()) [L19] COND TRUE !(cond) VAL [isInitial=1, last_1_var_1_15=0, last_1_var_1_19=-50, last_1_var_1_8=-10, var_1_10=16383, var_1_11=8191, var_1_12=-63678, var_1_13=200, var_1_15=0, var_1_16=32767, var_1_17=16384, var_1_18=0, var_1_19=1, var_1_1=1, var_1_4=1, var_1_7=1, var_1_8=1, var_1_9=1] [L19] reach_error() VAL [isInitial=1, last_1_var_1_15=0, last_1_var_1_19=-50, last_1_var_1_8=-10, var_1_10=16383, var_1_11=8191, var_1_12=-63678, var_1_13=200, var_1_15=0, var_1_16=32767, var_1_17=16384, var_1_18=0, var_1_19=1, var_1_1=1, var_1_4=1, var_1_7=1, var_1_8=1, var_1_9=1] - StatisticsResult: Ultimate Automizer benchmark data CFG has 2 procedures, 60 locations, 1 error locations. Started 1 CEGAR loops. OverallTime: 1.4s, OverallIterations: 2, TraceHistogramMax: 19, PathProgramHistogramMax: 1, EmptinessCheckTime: 0.0s, AutomataDifference: 0.1s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.0s, InitialAbstractionConstructionTime: 0.0s, HoareTripleCheckerStatistics: 0 mSolverCounterUnknown, 0 SdHoareTripleChecker+Valid, 0.0s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 0 mSDsluCounter, 85 SdHoareTripleChecker+Invalid, 0.0s Time, 0 mProtectedAction, 0 SdHoareTripleChecker+Unchecked, 0 IncrementalHoareTripleChecker+Unchecked, 0 mSDsCounter, 0 IncrementalHoareTripleChecker+Valid, 0 mProtectedPredicate, 0 IncrementalHoareTripleChecker+Invalid, 0 SdHoareTripleChecker+Unknown, 0 mSolverCounterNotChecked, 0 mSolverCounterUnsat, 85 mSDtfsCounter, 0 mSolverCounterSat, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Unknown, PredicateUnifierStatistics: 0 DeclaredPredicates, 124 GetRequests, 124 SyntacticMatches, 0 SemanticMatches, 0 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=60occurred in iteration=0, InterpolantAutomatonStates: 2, traceCheckStatistics: No data available, InterpolantConsolidationStatistics: No data available, PathInvariantsStatistics: No data available, 0/0 InterpolantCoveringCapability, TotalInterpolationStatistics: No data available, 0.0s DumpTime, AutomataMinimizationStatistics: 0.0s AutomataMinimizationTime, 1 MinimizatonAttempts, 0 StatesRemovedByMinimization, 0 NontrivialMinimizations, HoareAnnotationStatistics: No data available, RefinementEngineStatistics: TRACE_CHECK: 0.1s SsaConstructionTime, 0.4s SatisfiabilityAnalysisTime, 0.1s InterpolantComputationTime, 492 NumberOfCodeBlocks, 492 NumberOfCodeBlocksAsserted, 4 NumberOfCheckSat, 244 ConstructedInterpolants, 0 QuantifiedInterpolants, 244 SizeOfPredicates, 0 NumberOfNonLiveVariables, 295 ConjunctsInSsa, 1 ConjunctsInUnsatCore, 2 InterpolantComputations, 1 PerfectInterpolantSequences, 1332/1368 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:59:05,937 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_50-while_file-77.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 78836c178ddb16256f411b8e068f2e4220ea92222978b5c3751a71975a7a158a --- Real Ultimate output --- This is Ultimate 0.3.0-?-551b009-m [2025-01-09 13:59:08,054 INFO L188 SettingsManager]: Resetting all preferences to default values... [2025-01-09 13:59:08,149 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:59:08,154 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2025-01-09 13:59:08,154 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2025-01-09 13:59:08,180 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2025-01-09 13:59:08,181 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2025-01-09 13:59:08,181 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2025-01-09 13:59:08,181 INFO L151 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2025-01-09 13:59:08,182 INFO L153 SettingsManager]: * Use memory slicer=true [2025-01-09 13:59:08,182 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2025-01-09 13:59:08,183 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2025-01-09 13:59:08,183 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2025-01-09 13:59:08,183 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2025-01-09 13:59:08,183 INFO L153 SettingsManager]: * Use SBE=true [2025-01-09 13:59:08,183 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2025-01-09 13:59:08,183 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2025-01-09 13:59:08,183 INFO L153 SettingsManager]: * sizeof long=4 [2025-01-09 13:59:08,183 INFO L153 SettingsManager]: * sizeof POINTER=4 [2025-01-09 13:59:08,183 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2025-01-09 13:59:08,183 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2025-01-09 13:59:08,183 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2025-01-09 13:59:08,183 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2025-01-09 13:59:08,183 INFO L153 SettingsManager]: * Adapt memory model on pointer casts if necessary=true [2025-01-09 13:59:08,183 INFO L153 SettingsManager]: * Use bitvectors instead of ints=true [2025-01-09 13:59:08,184 INFO L153 SettingsManager]: * Memory model=HoenickeLindenmann_4ByteResolution [2025-01-09 13:59:08,184 INFO L153 SettingsManager]: * sizeof long double=12 [2025-01-09 13:59:08,184 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2025-01-09 13:59:08,184 INFO L153 SettingsManager]: * Behaviour of calls to undefined functions=OVERAPPROXIMATE_BEHAVIOUR [2025-01-09 13:59:08,184 INFO L153 SettingsManager]: * Use constant arrays=true [2025-01-09 13:59:08,184 INFO L151 SettingsManager]: Preferences of IcfgBuilder differ from their defaults: [2025-01-09 13:59:08,184 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2025-01-09 13:59:08,184 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2025-01-09 13:59:08,184 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2025-01-09 13:59:08,184 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-01-09 13:59:08,184 INFO L151 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2025-01-09 13:59:08,184 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2025-01-09 13:59:08,184 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2025-01-09 13:59:08,184 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2025-01-09 13:59:08,184 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-01-09 13:59:08,184 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2025-01-09 13:59:08,184 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2025-01-09 13:59:08,184 INFO L153 SettingsManager]: * Compute procedure contracts=false [2025-01-09 13:59:08,184 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2025-01-09 13:59:08,185 INFO L153 SettingsManager]: * Trace refinement strategy=FOX [2025-01-09 13:59:08,186 INFO L153 SettingsManager]: * Command for external solver=cvc4 --incremental --print-success --lang smt [2025-01-09 13:59:08,186 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2025-01-09 13:59:08,186 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2025-01-09 13:59:08,186 INFO L153 SettingsManager]: * Order on configurations for Petri net unfoldings=DBO [2025-01-09 13:59:08,186 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2025-01-09 13:59:08,186 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 -> 78836c178ddb16256f411b8e068f2e4220ea92222978b5c3751a71975a7a158a [2025-01-09 13:59:08,432 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2025-01-09 13:59:08,442 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2025-01-09 13:59:08,444 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2025-01-09 13:59:08,445 INFO L270 PluginConnector]: Initializing CDTParser... [2025-01-09 13:59:08,445 INFO L274 PluginConnector]: CDTParser initialized [2025-01-09 13:59:08,446 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/hardness-nfm22/hardness_loopvsstraightlinecode_50-while_file-77.i [2025-01-09 13:59:09,740 INFO L533 CDTParser]: Created temporary CDT project at /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/ab49216fb/b4b2927acd5c44c585ae50ca23675903/FLAG7ccfe23bd [2025-01-09 13:59:09,952 INFO L384 CDTParser]: Found 1 translation units. [2025-01-09 13:59:09,953 INFO L180 CDTParser]: Scanning /storage/repos/ultimate-jdk21/releaseScripts/default/sv-benchmarks/c/hardness-nfm22/hardness_loopvsstraightlinecode_50-while_file-77.i [2025-01-09 13:59:09,961 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/ab49216fb/b4b2927acd5c44c585ae50ca23675903/FLAG7ccfe23bd [2025-01-09 13:59:10,303 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/ab49216fb/b4b2927acd5c44c585ae50ca23675903 [2025-01-09 13:59:10,306 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2025-01-09 13:59:10,307 INFO L133 ToolchainWalker]: Walking toolchain with 6 elements. [2025-01-09 13:59:10,309 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2025-01-09 13:59:10,309 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2025-01-09 13:59:10,312 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2025-01-09 13:59:10,313 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 09.01 01:59:10" (1/1) ... [2025-01-09 13:59:10,314 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@20439063 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:59:10, skipping insertion in model container [2025-01-09 13:59:10,314 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 09.01 01:59:10" (1/1) ... [2025-01-09 13:59:10,330 INFO L175 MainTranslator]: Built tables and reachable declarations [2025-01-09 13:59:10,441 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_50-while_file-77.i[915,928] [2025-01-09 13:59:10,490 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-01-09 13:59:10,501 INFO L200 MainTranslator]: Completed pre-run [2025-01-09 13:59:10,509 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_50-while_file-77.i[915,928] [2025-01-09 13:59:10,526 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-01-09 13:59:10,537 INFO L204 MainTranslator]: Completed translation [2025-01-09 13:59:10,537 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:59:10 WrapperNode [2025-01-09 13:59:10,537 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2025-01-09 13:59:10,538 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2025-01-09 13:59:10,538 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2025-01-09 13:59:10,538 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2025-01-09 13:59:10,542 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:59:10" (1/1) ... [2025-01-09 13:59:10,547 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:59:10" (1/1) ... [2025-01-09 13:59:10,559 INFO L138 Inliner]: procedures = 27, calls = 32, calls flagged for inlining = 8, calls inlined = 8, statements flattened = 134 [2025-01-09 13:59:10,560 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2025-01-09 13:59:10,560 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2025-01-09 13:59:10,560 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2025-01-09 13:59:10,560 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2025-01-09 13:59:10,568 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:59:10" (1/1) ... [2025-01-09 13:59:10,569 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:59:10" (1/1) ... [2025-01-09 13:59:10,571 INFO L184 PluginConnector]: Executing the observer MemorySlicer from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:59:10" (1/1) ... [2025-01-09 13:59:10,577 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:59:10,578 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:59:10" (1/1) ... [2025-01-09 13:59:10,578 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:59:10" (1/1) ... [2025-01-09 13:59:10,586 INFO L184 PluginConnector]: Executing the observer ReplaceArrayAssignments from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:59:10" (1/1) ... [2025-01-09 13:59:10,587 INFO L184 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:59:10" (1/1) ... [2025-01-09 13:59:10,589 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:59:10" (1/1) ... [2025-01-09 13:59:10,592 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:59:10" (1/1) ... [2025-01-09 13:59:10,596 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:59:10" (1/1) ... [2025-01-09 13:59:10,598 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2025-01-09 13:59:10,603 INFO L112 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2025-01-09 13:59:10,603 INFO L270 PluginConnector]: Initializing RCFGBuilder... [2025-01-09 13:59:10,603 INFO L274 PluginConnector]: RCFGBuilder initialized [2025-01-09 13:59:10,604 INFO L184 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:59:10" (1/1) ... [2025-01-09 13:59:10,607 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-01-09 13:59:10,618 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-09 13:59:10,632 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:59:10,634 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:59:10,650 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2025-01-09 13:59:10,651 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~intINTTYPE1#0 [2025-01-09 13:59:10,651 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2025-01-09 13:59:10,651 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2025-01-09 13:59:10,651 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2025-01-09 13:59:10,651 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2025-01-09 13:59:10,700 INFO L234 CfgBuilder]: Building ICFG [2025-01-09 13:59:10,702 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2025-01-09 13:59:11,470 INFO L? ?]: Removed 18 outVars from TransFormulas that were not future-live. [2025-01-09 13:59:11,470 INFO L283 CfgBuilder]: Performing block encoding [2025-01-09 13:59:11,476 INFO L307 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2025-01-09 13:59:11,477 INFO L312 CfgBuilder]: Removed 1 assume(true) statements. [2025-01-09 13:59:11,477 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 09.01 01:59:11 BoogieIcfgContainer [2025-01-09 13:59:11,477 INFO L131 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2025-01-09 13:59:11,479 INFO L112 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2025-01-09 13:59:11,479 INFO L270 PluginConnector]: Initializing TraceAbstraction... [2025-01-09 13:59:11,482 INFO L274 PluginConnector]: TraceAbstraction initialized [2025-01-09 13:59:11,482 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 09.01 01:59:10" (1/3) ... [2025-01-09 13:59:11,482 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@383043c and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 09.01 01:59:11, skipping insertion in model container [2025-01-09 13:59:11,482 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:59:10" (2/3) ... [2025-01-09 13:59:11,483 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@383043c and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 09.01 01:59:11, skipping insertion in model container [2025-01-09 13:59:11,483 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 09.01 01:59:11" (3/3) ... [2025-01-09 13:59:11,483 INFO L128 eAbstractionObserver]: Analyzing ICFG hardness_loopvsstraightlinecode_50-while_file-77.i [2025-01-09 13:59:11,492 INFO L216 ceAbstractionStarter]: Automizer settings: Hoare:LoopHeads NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2025-01-09 13:59:11,494 INFO L151 ceAbstractionStarter]: Applying trace abstraction to ICFG hardness_loopvsstraightlinecode_50-while_file-77.i that has 2 procedures, 60 locations, 1 initial locations, 1 loop locations, and 1 error locations. [2025-01-09 13:59:11,535 INFO L332 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2025-01-09 13:59:11,543 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;@1a4d7915, mLbeIndependenceSettings=[IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=false, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2025-01-09 13:59:11,543 INFO L334 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2025-01-09 13:59:11,546 INFO L276 IsEmpty]: Start isEmpty. Operand has 60 states, 38 states have (on average 1.368421052631579) internal successors, (52), 39 states have internal predecessors, (52), 19 states have call successors, (19), 1 states have call predecessors, (19), 1 states have return successors, (19), 19 states have call predecessors, (19), 19 states have call successors, (19) [2025-01-09 13:59:11,552 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 124 [2025-01-09 13:59:11,552 INFO L210 NwaCegarLoop]: Found error trace [2025-01-09 13:59:11,553 INFO L218 NwaCegarLoop]: trace histogram [19, 19, 19, 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, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-01-09 13:59:11,553 INFO L396 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2025-01-09 13:59:11,556 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-09 13:59:11,556 INFO L85 PathProgramCache]: Analyzing trace with hash -805699891, now seen corresponding path program 1 times [2025-01-09 13:59:11,562 INFO L118 FreeRefinementEngine]: Executing refinement strategy FOX [2025-01-09 13:59:11,563 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1494097652] [2025-01-09 13:59:11,563 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-01-09 13:59:11,563 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:59:11,563 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/mathsat [2025-01-09 13:59:11,567 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:59:11,568 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:59:11,637 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 123 statements into 1 equivalence classes. [2025-01-09 13:59:11,758 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 123 of 123 statements. [2025-01-09 13:59:11,758 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-09 13:59:11,758 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-09 13:59:11,764 INFO L256 TraceCheckSpWp]: Trace formula consists of 205 conjuncts, 1 conjuncts are in the unsatisfiable core [2025-01-09 13:59:11,770 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-01-09 13:59:11,827 INFO L134 CoverageAnalysis]: Checked inductivity of 684 backedges. 36 proven. 0 refuted. 0 times theorem prover too weak. 648 trivial. 0 not checked. [2025-01-09 13:59:11,827 INFO L308 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2025-01-09 13:59:11,828 INFO L136 FreeRefinementEngine]: Strategy FOX found an infeasible trace [2025-01-09 13:59:11,828 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1494097652] [2025-01-09 13:59:11,828 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1494097652] provided 1 perfect and 0 imperfect interpolant sequences [2025-01-09 13:59:11,828 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-01-09 13:59:11,828 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2025-01-09 13:59:11,830 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [306214922] [2025-01-09 13:59:11,831 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-01-09 13:59:11,834 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 2 states [2025-01-09 13:59:11,835 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy FOX [2025-01-09 13:59:11,852 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2025-01-09 13:59:11,853 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2025-01-09 13:59:11,855 INFO L87 Difference]: Start difference. First operand has 60 states, 38 states have (on average 1.368421052631579) internal successors, (52), 39 states have internal predecessors, (52), 19 states have call successors, (19), 1 states have call predecessors, (19), 1 states have return successors, (19), 19 states have call predecessors, (19), 19 states have call successors, (19) Second operand has 2 states, 2 states have (on average 16.5) internal successors, (33), 2 states have internal predecessors, (33), 1 states have call successors, (19), 1 states have call predecessors, (19), 2 states have return successors, (19), 2 states have call predecessors, (19), 1 states have call successors, (19) [2025-01-09 13:59:11,874 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2025-01-09 13:59:11,875 INFO L93 Difference]: Finished difference Result 114 states and 194 transitions. [2025-01-09 13:59:11,875 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2025-01-09 13:59:11,876 INFO L78 Accepts]: Start accepts. Automaton has has 2 states, 2 states have (on average 16.5) internal successors, (33), 2 states have internal predecessors, (33), 1 states have call successors, (19), 1 states have call predecessors, (19), 2 states have return successors, (19), 2 states have call predecessors, (19), 1 states have call successors, (19) Word has length 123 [2025-01-09 13:59:11,877 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2025-01-09 13:59:11,881 INFO L225 Difference]: With dead ends: 114 [2025-01-09 13:59:11,881 INFO L226 Difference]: Without dead ends: 57 [2025-01-09 13:59:11,884 INFO L434 NwaCegarLoop]: 0 DeclaredPredicates, 122 GetRequests, 122 SyntacticMatches, 0 SemanticMatches, 0 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2025-01-09 13:59:11,886 INFO L435 NwaCegarLoop]: 85 mSDtfsCounter, 0 mSDsluCounter, 0 mSDsCounter, 0 mSdLazyCounter, 0 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 0 SdHoareTripleChecker+Valid, 85 SdHoareTripleChecker+Invalid, 0 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 0 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2025-01-09 13:59:11,886 INFO L436 NwaCegarLoop]: SdHoareTripleChecker [0 Valid, 85 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 0 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2025-01-09 13:59:11,895 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 57 states. [2025-01-09 13:59:11,907 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 57 to 57. [2025-01-09 13:59:11,908 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 57 states, 36 states have (on average 1.3055555555555556) internal successors, (47), 36 states have internal predecessors, (47), 19 states have call successors, (19), 1 states have call predecessors, (19), 1 states have return successors, (19), 19 states have call predecessors, (19), 19 states have call successors, (19) [2025-01-09 13:59:11,911 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 57 states to 57 states and 85 transitions. [2025-01-09 13:59:11,913 INFO L78 Accepts]: Start accepts. Automaton has 57 states and 85 transitions. Word has length 123 [2025-01-09 13:59:11,913 INFO L84 Accepts]: Finished accepts. word is rejected. [2025-01-09 13:59:11,913 INFO L471 AbstractCegarLoop]: Abstraction has 57 states and 85 transitions. [2025-01-09 13:59:11,913 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 2 states, 2 states have (on average 16.5) internal successors, (33), 2 states have internal predecessors, (33), 1 states have call successors, (19), 1 states have call predecessors, (19), 2 states have return successors, (19), 2 states have call predecessors, (19), 1 states have call successors, (19) [2025-01-09 13:59:11,914 INFO L276 IsEmpty]: Start isEmpty. Operand 57 states and 85 transitions. [2025-01-09 13:59:11,915 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 124 [2025-01-09 13:59:11,915 INFO L210 NwaCegarLoop]: Found error trace [2025-01-09 13:59:11,916 INFO L218 NwaCegarLoop]: trace histogram [19, 19, 19, 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, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2025-01-09 13:59:11,924 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:59:12,117 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:59:12,117 INFO L396 AbstractCegarLoop]: === Iteration 2 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2025-01-09 13:59:12,118 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-09 13:59:12,118 INFO L85 PathProgramCache]: Analyzing trace with hash -453093429, now seen corresponding path program 1 times [2025-01-09 13:59:12,119 INFO L118 FreeRefinementEngine]: Executing refinement strategy FOX [2025-01-09 13:59:12,119 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1807267166] [2025-01-09 13:59:12,119 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-01-09 13:59:12,119 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:59:12,119 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/mathsat [2025-01-09 13:59:12,123 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:59:12,124 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:59:12,171 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 123 statements into 1 equivalence classes. [2025-01-09 13:59:12,376 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 123 of 123 statements. [2025-01-09 13:59:12,377 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-09 13:59:12,377 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-09 13:59:12,385 INFO L256 TraceCheckSpWp]: Trace formula consists of 205 conjuncts, 24 conjuncts are in the unsatisfiable core [2025-01-09 13:59:12,392 INFO L279 TraceCheckSpWp]: Computing forward predicates...