./Ultimate.py --spec ../sv-benchmarks/c/properties/unreach-call.prp --file ../sv-benchmarks/c/hardness-nfm22/hardness_loopvsstraightlinecode_25-1loop_file-43.i --full-output --architecture 32bit -------------------------------------------------------------------------------- Checking for ERROR reachability Using default analysis Version 551b0097 Calling Ultimate with: /root/.sdkman/candidates/java/21.0.5-tem/bin/java -Dosgi.configuration.area=/storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/config -Xmx15G -Xms4m -jar /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/plugins/org.eclipse.equinox.launcher_1.6.800.v20240513-1750.jar -data @noDefault -ultimatedata /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data -tc /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/config/AutomizerReach.xml -i ../sv-benchmarks/c/hardness-nfm22/hardness_loopvsstraightlinecode_25-1loop_file-43.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 e6650119a7fe3ff36ff850c77813e4f9e9500a338e3ffc0b002d1498ea71ee91 --- Real Ultimate output --- This is Ultimate 0.3.0-?-551b009-m [2025-01-09 13:18:02,001 INFO L188 SettingsManager]: Resetting all preferences to default values... [2025-01-09 13:18:02,059 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:18:02,066 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2025-01-09 13:18:02,067 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2025-01-09 13:18:02,088 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2025-01-09 13:18:02,089 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2025-01-09 13:18:02,089 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2025-01-09 13:18:02,090 INFO L151 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2025-01-09 13:18:02,090 INFO L153 SettingsManager]: * Use memory slicer=true [2025-01-09 13:18:02,090 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2025-01-09 13:18:02,091 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2025-01-09 13:18:02,091 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2025-01-09 13:18:02,091 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2025-01-09 13:18:02,091 INFO L153 SettingsManager]: * Use SBE=true [2025-01-09 13:18:02,091 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2025-01-09 13:18:02,092 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2025-01-09 13:18:02,092 INFO L153 SettingsManager]: * sizeof long=4 [2025-01-09 13:18:02,092 INFO L153 SettingsManager]: * Overapproximate operations on floating types=true [2025-01-09 13:18:02,092 INFO L153 SettingsManager]: * sizeof POINTER=4 [2025-01-09 13:18:02,092 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2025-01-09 13:18:02,092 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2025-01-09 13:18:02,092 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2025-01-09 13:18:02,092 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2025-01-09 13:18:02,092 INFO L153 SettingsManager]: * sizeof long double=12 [2025-01-09 13:18:02,092 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2025-01-09 13:18:02,092 INFO L153 SettingsManager]: * Behaviour of calls to undefined functions=OVERAPPROXIMATE_BEHAVIOUR [2025-01-09 13:18:02,093 INFO L153 SettingsManager]: * Use constant arrays=true [2025-01-09 13:18:02,093 INFO L151 SettingsManager]: Preferences of IcfgBuilder differ from their defaults: [2025-01-09 13:18:02,093 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2025-01-09 13:18:02,093 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2025-01-09 13:18:02,093 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2025-01-09 13:18:02,093 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-01-09 13:18:02,093 INFO L151 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2025-01-09 13:18:02,093 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2025-01-09 13:18:02,094 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2025-01-09 13:18:02,094 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2025-01-09 13:18:02,094 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-01-09 13:18:02,094 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2025-01-09 13:18:02,094 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2025-01-09 13:18:02,094 INFO L153 SettingsManager]: * Compute procedure contracts=false [2025-01-09 13:18:02,094 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2025-01-09 13:18:02,094 INFO L153 SettingsManager]: * Trace refinement strategy=CAMEL [2025-01-09 13:18:02,094 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2025-01-09 13:18:02,094 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2025-01-09 13:18:02,094 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2025-01-09 13:18:02,094 INFO L153 SettingsManager]: * Order on configurations for Petri net unfoldings=DBO [2025-01-09 13:18:02,094 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2025-01-09 13:18:02,094 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 -> e6650119a7fe3ff36ff850c77813e4f9e9500a338e3ffc0b002d1498ea71ee91 [2025-01-09 13:18:02,292 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2025-01-09 13:18:02,300 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2025-01-09 13:18:02,301 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2025-01-09 13:18:02,302 INFO L270 PluginConnector]: Initializing CDTParser... [2025-01-09 13:18:02,302 INFO L274 PluginConnector]: CDTParser initialized [2025-01-09 13:18:02,304 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/hardness-nfm22/hardness_loopvsstraightlinecode_25-1loop_file-43.i [2025-01-09 13:18:03,403 INFO L533 CDTParser]: Created temporary CDT project at /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/733b7eabf/9d13ee7e5e014f499ed4aada094bad0a/FLAG88d08fc6b [2025-01-09 13:18:03,617 INFO L384 CDTParser]: Found 1 translation units. [2025-01-09 13:18:03,626 INFO L180 CDTParser]: Scanning /storage/repos/ultimate-jdk21/releaseScripts/default/sv-benchmarks/c/hardness-nfm22/hardness_loopvsstraightlinecode_25-1loop_file-43.i [2025-01-09 13:18:03,636 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/733b7eabf/9d13ee7e5e014f499ed4aada094bad0a/FLAG88d08fc6b [2025-01-09 13:18:03,650 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/733b7eabf/9d13ee7e5e014f499ed4aada094bad0a [2025-01-09 13:18:03,653 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2025-01-09 13:18:03,654 INFO L133 ToolchainWalker]: Walking toolchain with 6 elements. [2025-01-09 13:18:03,655 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2025-01-09 13:18:03,655 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2025-01-09 13:18:03,659 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2025-01-09 13:18:03,659 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 09.01 01:18:03" (1/1) ... [2025-01-09 13:18:03,660 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@2297896b and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:18:03, skipping insertion in model container [2025-01-09 13:18:03,660 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 09.01 01:18:03" (1/1) ... [2025-01-09 13:18:03,673 INFO L175 MainTranslator]: Built tables and reachable declarations [2025-01-09 13:18:03,768 WARN L250 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate-jdk21/releaseScripts/default/sv-benchmarks/c/hardness-nfm22/hardness_loopvsstraightlinecode_25-1loop_file-43.i[915,928] [2025-01-09 13:18:03,805 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-01-09 13:18:03,816 INFO L200 MainTranslator]: Completed pre-run [2025-01-09 13:18:03,826 WARN L250 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate-jdk21/releaseScripts/default/sv-benchmarks/c/hardness-nfm22/hardness_loopvsstraightlinecode_25-1loop_file-43.i[915,928] [2025-01-09 13:18:03,842 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-01-09 13:18:03,855 INFO L204 MainTranslator]: Completed translation [2025-01-09 13:18:03,856 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:18:03 WrapperNode [2025-01-09 13:18:03,857 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2025-01-09 13:18:03,857 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2025-01-09 13:18:03,858 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2025-01-09 13:18:03,858 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2025-01-09 13:18:03,863 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:18:03" (1/1) ... [2025-01-09 13:18:03,870 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:18:03" (1/1) ... [2025-01-09 13:18:03,898 INFO L138 Inliner]: procedures = 26, calls = 25, calls flagged for inlining = 8, calls inlined = 8, statements flattened = 105 [2025-01-09 13:18:03,898 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2025-01-09 13:18:03,899 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2025-01-09 13:18:03,899 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2025-01-09 13:18:03,899 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2025-01-09 13:18:03,906 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:18:03" (1/1) ... [2025-01-09 13:18:03,907 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:18:03" (1/1) ... [2025-01-09 13:18:03,910 INFO L184 PluginConnector]: Executing the observer MemorySlicer from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:18:03" (1/1) ... [2025-01-09 13:18:03,924 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:18:03,924 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:18:03" (1/1) ... [2025-01-09 13:18:03,924 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:18:03" (1/1) ... [2025-01-09 13:18:03,930 INFO L184 PluginConnector]: Executing the observer ReplaceArrayAssignments from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:18:03" (1/1) ... [2025-01-09 13:18:03,933 INFO L184 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:18:03" (1/1) ... [2025-01-09 13:18:03,935 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:18:03" (1/1) ... [2025-01-09 13:18:03,937 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:18:03" (1/1) ... [2025-01-09 13:18:03,942 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:18:03" (1/1) ... [2025-01-09 13:18:03,943 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2025-01-09 13:18:03,944 INFO L112 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2025-01-09 13:18:03,944 INFO L270 PluginConnector]: Initializing RCFGBuilder... [2025-01-09 13:18:03,944 INFO L274 PluginConnector]: RCFGBuilder initialized [2025-01-09 13:18:03,945 INFO L184 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:18:03" (1/1) ... [2025-01-09 13:18:03,948 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-01-09 13:18:03,961 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-09 13:18:03,974 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:18:03,977 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:18:03,992 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2025-01-09 13:18:03,993 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2025-01-09 13:18:03,993 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2025-01-09 13:18:03,993 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#0 [2025-01-09 13:18:03,993 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2025-01-09 13:18:03,993 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2025-01-09 13:18:04,039 INFO L234 CfgBuilder]: Building ICFG [2025-01-09 13:18:04,040 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2025-01-09 13:18:04,162 INFO L? ?]: Removed 9 outVars from TransFormulas that were not future-live. [2025-01-09 13:18:04,162 INFO L283 CfgBuilder]: Performing block encoding [2025-01-09 13:18:04,168 INFO L307 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2025-01-09 13:18:04,168 INFO L312 CfgBuilder]: Removed 0 assume(true) statements. [2025-01-09 13:18:04,169 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 09.01 01:18:04 BoogieIcfgContainer [2025-01-09 13:18:04,169 INFO L131 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2025-01-09 13:18:04,170 INFO L112 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2025-01-09 13:18:04,170 INFO L270 PluginConnector]: Initializing TraceAbstraction... [2025-01-09 13:18:04,173 INFO L274 PluginConnector]: TraceAbstraction initialized [2025-01-09 13:18:04,173 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 09.01 01:18:03" (1/3) ... [2025-01-09 13:18:04,174 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@43fa54f6 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 09.01 01:18:04, skipping insertion in model container [2025-01-09 13:18:04,174 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:18:03" (2/3) ... [2025-01-09 13:18:04,174 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@43fa54f6 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 09.01 01:18:04, skipping insertion in model container [2025-01-09 13:18:04,174 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 09.01 01:18:04" (3/3) ... [2025-01-09 13:18:04,175 INFO L128 eAbstractionObserver]: Analyzing ICFG hardness_loopvsstraightlinecode_25-1loop_file-43.i [2025-01-09 13:18:04,184 INFO L216 ceAbstractionStarter]: Automizer settings: Hoare:LoopHeads NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2025-01-09 13:18:04,185 INFO L151 ceAbstractionStarter]: Applying trace abstraction to ICFG hardness_loopvsstraightlinecode_25-1loop_file-43.i that has 2 procedures, 45 locations, 1 initial locations, 1 loop locations, and 1 error locations. [2025-01-09 13:18:04,220 INFO L332 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2025-01-09 13:18:04,230 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;@7941289a, mLbeIndependenceSettings=[IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=false, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2025-01-09 13:18:04,230 INFO L334 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2025-01-09 13:18:04,233 INFO L276 IsEmpty]: Start isEmpty. Operand has 45 states, 30 states have (on average 1.3) internal successors, (39), 31 states have internal predecessors, (39), 12 states have call successors, (12), 1 states have call predecessors, (12), 1 states have return successors, (12), 12 states have call predecessors, (12), 12 states have call successors, (12) [2025-01-09 13:18:04,238 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 83 [2025-01-09 13:18:04,238 INFO L210 NwaCegarLoop]: Found error trace [2025-01-09 13:18:04,238 INFO L218 NwaCegarLoop]: trace histogram [12, 12, 12, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 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:18:04,239 INFO L396 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2025-01-09 13:18:04,242 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-09 13:18:04,242 INFO L85 PathProgramCache]: Analyzing trace with hash -1242397310, now seen corresponding path program 1 times [2025-01-09 13:18:04,247 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-01-09 13:18:04,247 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1772139367] [2025-01-09 13:18:04,248 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-01-09 13:18:04,248 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-01-09 13:18:04,321 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 82 statements into 1 equivalence classes. [2025-01-09 13:18:04,338 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 82 of 82 statements. [2025-01-09 13:18:04,338 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-09 13:18:04,338 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-09 13:18:04,402 INFO L134 CoverageAnalysis]: Checked inductivity of 264 backedges. 0 proven. 22 refuted. 0 times theorem prover too weak. 242 trivial. 0 not checked. [2025-01-09 13:18:04,402 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-01-09 13:18:04,403 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1772139367] [2025-01-09 13:18:04,403 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1772139367] provided 0 perfect and 1 imperfect interpolant sequences [2025-01-09 13:18:04,403 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [890223736] [2025-01-09 13:18:04,403 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-01-09 13:18:04,403 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2025-01-09 13:18:04,403 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-09 13:18:04,407 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:18:04,408 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:18:04,472 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 82 statements into 1 equivalence classes. [2025-01-09 13:18:04,523 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 82 of 82 statements. [2025-01-09 13:18:04,523 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-09 13:18:04,523 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-09 13:18:04,526 INFO L256 TraceCheckSpWp]: Trace formula consists of 206 conjuncts, 1 conjuncts are in the unsatisfiable core [2025-01-09 13:18:04,531 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-01-09 13:18:04,544 INFO L134 CoverageAnalysis]: Checked inductivity of 264 backedges. 22 proven. 0 refuted. 0 times theorem prover too weak. 242 trivial. 0 not checked. [2025-01-09 13:18:04,545 INFO L308 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2025-01-09 13:18:04,545 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [890223736] provided 1 perfect and 0 imperfect interpolant sequences [2025-01-09 13:18:04,546 INFO L185 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2025-01-09 13:18:04,546 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [2] total 2 [2025-01-09 13:18:04,547 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [660275549] [2025-01-09 13:18:04,547 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-01-09 13:18:04,550 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 2 states [2025-01-09 13:18:04,550 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-01-09 13:18:04,561 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2025-01-09 13:18:04,561 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2025-01-09 13:18:04,562 INFO L87 Difference]: Start difference. First operand has 45 states, 30 states have (on average 1.3) internal successors, (39), 31 states have internal predecessors, (39), 12 states have call successors, (12), 1 states have call predecessors, (12), 1 states have return successors, (12), 12 states have call predecessors, (12), 12 states have call successors, (12) Second operand has 2 states, 2 states have (on average 13.5) internal successors, (27), 2 states have internal predecessors, (27), 2 states have call successors, (12), 2 states have call predecessors, (12), 1 states have return successors, (12), 1 states have call predecessors, (12), 2 states have call successors, (12) [2025-01-09 13:18:04,574 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2025-01-09 13:18:04,574 INFO L93 Difference]: Finished difference Result 87 states and 135 transitions. [2025-01-09 13:18:04,575 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2025-01-09 13:18:04,576 INFO L78 Accepts]: Start accepts. Automaton has has 2 states, 2 states have (on average 13.5) internal successors, (27), 2 states have internal predecessors, (27), 2 states have call successors, (12), 2 states have call predecessors, (12), 1 states have return successors, (12), 1 states have call predecessors, (12), 2 states have call successors, (12) Word has length 82 [2025-01-09 13:18:04,576 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2025-01-09 13:18:04,579 INFO L225 Difference]: With dead ends: 87 [2025-01-09 13:18:04,579 INFO L226 Difference]: Without dead ends: 42 [2025-01-09 13:18:04,582 INFO L434 NwaCegarLoop]: 0 DeclaredPredicates, 83 GetRequests, 83 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:18:04,585 INFO L435 NwaCegarLoop]: 61 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, 61 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:18:04,585 INFO L436 NwaCegarLoop]: SdHoareTripleChecker [0 Valid, 61 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 0 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2025-01-09 13:18:04,594 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 42 states. [2025-01-09 13:18:04,605 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 42 to 42. [2025-01-09 13:18:04,605 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 42 states, 28 states have (on average 1.2142857142857142) internal successors, (34), 28 states have internal predecessors, (34), 12 states have call successors, (12), 1 states have call predecessors, (12), 1 states have return successors, (12), 12 states have call predecessors, (12), 12 states have call successors, (12) [2025-01-09 13:18:04,608 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 42 states to 42 states and 58 transitions. [2025-01-09 13:18:04,609 INFO L78 Accepts]: Start accepts. Automaton has 42 states and 58 transitions. Word has length 82 [2025-01-09 13:18:04,609 INFO L84 Accepts]: Finished accepts. word is rejected. [2025-01-09 13:18:04,609 INFO L471 AbstractCegarLoop]: Abstraction has 42 states and 58 transitions. [2025-01-09 13:18:04,609 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 2 states, 2 states have (on average 13.5) internal successors, (27), 2 states have internal predecessors, (27), 2 states have call successors, (12), 2 states have call predecessors, (12), 1 states have return successors, (12), 1 states have call predecessors, (12), 2 states have call successors, (12) [2025-01-09 13:18:04,609 INFO L276 IsEmpty]: Start isEmpty. Operand 42 states and 58 transitions. [2025-01-09 13:18:04,611 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 83 [2025-01-09 13:18:04,611 INFO L210 NwaCegarLoop]: Found error trace [2025-01-09 13:18:04,611 INFO L218 NwaCegarLoop]: trace histogram [12, 12, 12, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 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:18:04,617 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:18:04,813 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:18:04,813 INFO L396 AbstractCegarLoop]: === Iteration 2 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2025-01-09 13:18:04,814 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-09 13:18:04,814 INFO L85 PathProgramCache]: Analyzing trace with hash 516108990, now seen corresponding path program 1 times [2025-01-09 13:18:04,814 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-01-09 13:18:04,814 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1993058538] [2025-01-09 13:18:04,814 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-01-09 13:18:04,814 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-01-09 13:18:04,832 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 82 statements into 1 equivalence classes. [2025-01-09 13:18:04,882 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 82 of 82 statements. [2025-01-09 13:18:04,882 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-09 13:18:04,882 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-09 13:18:05,177 INFO L134 CoverageAnalysis]: Checked inductivity of 264 backedges. 27 proven. 6 refuted. 0 times theorem prover too weak. 231 trivial. 0 not checked. [2025-01-09 13:18:05,177 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-01-09 13:18:05,177 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1993058538] [2025-01-09 13:18:05,177 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1993058538] provided 0 perfect and 1 imperfect interpolant sequences [2025-01-09 13:18:05,177 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [293848451] [2025-01-09 13:18:05,178 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-01-09 13:18:05,178 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2025-01-09 13:18:05,178 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-09 13:18:05,180 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:18:05,181 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:18:05,238 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 82 statements into 1 equivalence classes. [2025-01-09 13:18:05,269 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 82 of 82 statements. [2025-01-09 13:18:05,270 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-09 13:18:05,270 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-09 13:18:05,270 INFO L256 TraceCheckSpWp]: Trace formula consists of 206 conjuncts, 8 conjuncts are in the unsatisfiable core [2025-01-09 13:18:05,273 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-01-09 13:18:05,345 INFO L134 CoverageAnalysis]: Checked inductivity of 264 backedges. 101 proven. 6 refuted. 0 times theorem prover too weak. 157 trivial. 0 not checked. [2025-01-09 13:18:05,345 INFO L312 TraceCheckSpWp]: Computing backward predicates... [2025-01-09 13:18:05,504 INFO L134 CoverageAnalysis]: Checked inductivity of 264 backedges. 27 proven. 6 refuted. 0 times theorem prover too weak. 231 trivial. 0 not checked. [2025-01-09 13:18:05,506 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [293848451] provided 0 perfect and 2 imperfect interpolant sequences [2025-01-09 13:18:05,506 INFO L185 FreeRefinementEngine]: Found 0 perfect and 3 imperfect interpolant sequences. [2025-01-09 13:18:05,506 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [6, 6, 6] total 8 [2025-01-09 13:18:05,506 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2013564579] [2025-01-09 13:18:05,506 INFO L85 oduleStraightlineAll]: Using 3 imperfect interpolants to construct interpolant automaton [2025-01-09 13:18:05,507 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2025-01-09 13:18:05,507 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-01-09 13:18:05,508 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2025-01-09 13:18:05,508 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=19, Invalid=37, Unknown=0, NotChecked=0, Total=56 [2025-01-09 13:18:05,509 INFO L87 Difference]: Start difference. First operand 42 states and 58 transitions. Second operand has 8 states, 8 states have (on average 4.25) internal successors, (34), 8 states have internal predecessors, (34), 2 states have call successors, (14), 2 states have call predecessors, (14), 4 states have return successors, (15), 2 states have call predecessors, (15), 2 states have call successors, (15) [2025-01-09 13:18:05,694 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2025-01-09 13:18:05,695 INFO L93 Difference]: Finished difference Result 89 states and 120 transitions. [2025-01-09 13:18:05,695 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2025-01-09 13:18:05,695 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 4.25) internal successors, (34), 8 states have internal predecessors, (34), 2 states have call successors, (14), 2 states have call predecessors, (14), 4 states have return successors, (15), 2 states have call predecessors, (15), 2 states have call successors, (15) Word has length 82 [2025-01-09 13:18:05,696 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2025-01-09 13:18:05,696 INFO L225 Difference]: With dead ends: 89 [2025-01-09 13:18:05,696 INFO L226 Difference]: Without dead ends: 50 [2025-01-09 13:18:05,697 INFO L434 NwaCegarLoop]: 0 DeclaredPredicates, 177 GetRequests, 161 SyntacticMatches, 3 SemanticMatches, 13 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 14 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=77, Invalid=133, Unknown=0, NotChecked=0, Total=210 [2025-01-09 13:18:05,697 INFO L435 NwaCegarLoop]: 39 mSDtfsCounter, 110 mSDsluCounter, 51 mSDsCounter, 0 mSdLazyCounter, 81 mSolverCounterSat, 77 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 112 SdHoareTripleChecker+Valid, 90 SdHoareTripleChecker+Invalid, 158 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 77 IncrementalHoareTripleChecker+Valid, 81 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2025-01-09 13:18:05,698 INFO L436 NwaCegarLoop]: SdHoareTripleChecker [112 Valid, 90 Invalid, 158 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [77 Valid, 81 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2025-01-09 13:18:05,698 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 50 states. [2025-01-09 13:18:05,705 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 50 to 46. [2025-01-09 13:18:05,705 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 46 states, 31 states have (on average 1.1290322580645162) internal successors, (35), 31 states have internal predecessors, (35), 12 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (12), 12 states have call predecessors, (12), 12 states have call successors, (12) [2025-01-09 13:18:05,706 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 46 states to 46 states and 59 transitions. [2025-01-09 13:18:05,706 INFO L78 Accepts]: Start accepts. Automaton has 46 states and 59 transitions. Word has length 82 [2025-01-09 13:18:05,706 INFO L84 Accepts]: Finished accepts. word is rejected. [2025-01-09 13:18:05,706 INFO L471 AbstractCegarLoop]: Abstraction has 46 states and 59 transitions. [2025-01-09 13:18:05,706 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 4.25) internal successors, (34), 8 states have internal predecessors, (34), 2 states have call successors, (14), 2 states have call predecessors, (14), 4 states have return successors, (15), 2 states have call predecessors, (15), 2 states have call successors, (15) [2025-01-09 13:18:05,707 INFO L276 IsEmpty]: Start isEmpty. Operand 46 states and 59 transitions. [2025-01-09 13:18:05,707 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 83 [2025-01-09 13:18:05,708 INFO L210 NwaCegarLoop]: Found error trace [2025-01-09 13:18:05,708 INFO L218 NwaCegarLoop]: trace histogram [12, 12, 12, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 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:18:05,715 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:18:05,912 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:18:05,912 INFO L396 AbstractCegarLoop]: === Iteration 3 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2025-01-09 13:18:05,912 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-09 13:18:05,912 INFO L85 PathProgramCache]: Analyzing trace with hash 517956032, now seen corresponding path program 1 times [2025-01-09 13:18:05,912 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-01-09 13:18:05,913 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1549650327] [2025-01-09 13:18:05,913 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-01-09 13:18:05,913 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-01-09 13:18:05,921 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 82 statements into 1 equivalence classes. [2025-01-09 13:18:05,938 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 82 of 82 statements. [2025-01-09 13:18:05,938 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-09 13:18:05,938 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-01-09 13:18:05,938 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-01-09 13:18:05,941 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 82 statements into 1 equivalence classes. [2025-01-09 13:18:05,959 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 82 of 82 statements. [2025-01-09 13:18:05,962 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-09 13:18:05,962 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-01-09 13:18:05,986 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-01-09 13:18:05,986 INFO L340 BasicCegarLoop]: Counterexample is feasible [2025-01-09 13:18:05,987 INFO L782 garLoopResultBuilder]: Registering result UNSAFE for location ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION (0 of 1 remaining) [2025-01-09 13:18:05,988 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable2 [2025-01-09 13:18:05,990 INFO L422 BasicCegarLoop]: Path program histogram: [1, 1, 1] [2025-01-09 13:18:06,036 INFO L170 ceAbstractionStarter]: Computing trace abstraction results [2025-01-09 13:18:06,038 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 09.01 01:18:06 BoogieIcfgContainer [2025-01-09 13:18:06,039 INFO L131 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2025-01-09 13:18:06,039 INFO L112 PluginConnector]: ------------------------Witness Printer---------------------------- [2025-01-09 13:18:06,039 INFO L270 PluginConnector]: Initializing Witness Printer... [2025-01-09 13:18:06,039 INFO L274 PluginConnector]: Witness Printer initialized [2025-01-09 13:18:06,039 INFO L184 PluginConnector]: Executing the observer RCFGCatcher from plugin Witness Printer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 09.01 01:18:04" (3/4) ... [2025-01-09 13:18:06,042 INFO L149 WitnessPrinter]: No result that supports witness generation found [2025-01-09 13:18:06,043 INFO L131 PluginConnector]: ------------------------ END Witness Printer---------------------------- [2025-01-09 13:18:06,044 INFO L158 Benchmark]: Toolchain (without parser) took 2389.11ms. Allocated memory is still 142.6MB. Free memory was 107.9MB in the beginning and 81.2MB in the end (delta: 26.7MB). Peak memory consumption was 23.9MB. Max. memory is 16.1GB. [2025-01-09 13:18:06,044 INFO L158 Benchmark]: CDTParser took 0.22ms. Allocated memory is still 201.3MB. Free memory is still 116.2MB. There was no memory consumed. Max. memory is 16.1GB. [2025-01-09 13:18:06,044 INFO L158 Benchmark]: CACSL2BoogieTranslator took 201.84ms. Allocated memory is still 142.6MB. Free memory was 107.9MB in the beginning and 94.9MB in the end (delta: 12.9MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. [2025-01-09 13:18:06,045 INFO L158 Benchmark]: Boogie Procedure Inliner took 41.07ms. Allocated memory is still 142.6MB. Free memory was 94.9MB in the beginning and 93.5MB in the end (delta: 1.5MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. [2025-01-09 13:18:06,045 INFO L158 Benchmark]: Boogie Preprocessor took 44.47ms. Allocated memory is still 142.6MB. Free memory was 93.5MB in the beginning and 91.2MB in the end (delta: 2.3MB). There was no memory consumed. Max. memory is 16.1GB. [2025-01-09 13:18:06,045 INFO L158 Benchmark]: RCFGBuilder took 224.77ms. Allocated memory is still 142.6MB. Free memory was 91.2MB in the beginning and 77.5MB in the end (delta: 13.7MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. [2025-01-09 13:18:06,046 INFO L158 Benchmark]: TraceAbstraction took 1868.49ms. Allocated memory is still 142.6MB. Free memory was 76.7MB in the beginning and 81.2MB in the end (delta: -4.5MB). There was no memory consumed. Max. memory is 16.1GB. [2025-01-09 13:18:06,046 INFO L158 Benchmark]: Witness Printer took 3.99ms. Allocated memory is still 142.6MB. Free memory was 81.2MB in the beginning and 81.2MB in the end (delta: 24.1kB). There was no memory consumed. Max. memory is 16.1GB. [2025-01-09 13:18:06,047 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.22ms. Allocated memory is still 201.3MB. Free memory is still 116.2MB. There was no memory consumed. Max. memory is 16.1GB. * CACSL2BoogieTranslator took 201.84ms. Allocated memory is still 142.6MB. Free memory was 107.9MB in the beginning and 94.9MB in the end (delta: 12.9MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. * Boogie Procedure Inliner took 41.07ms. Allocated memory is still 142.6MB. Free memory was 94.9MB in the beginning and 93.5MB in the end (delta: 1.5MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. * Boogie Preprocessor took 44.47ms. Allocated memory is still 142.6MB. Free memory was 93.5MB in the beginning and 91.2MB in the end (delta: 2.3MB). There was no memory consumed. Max. memory is 16.1GB. * RCFGBuilder took 224.77ms. Allocated memory is still 142.6MB. Free memory was 91.2MB in the beginning and 77.5MB in the end (delta: 13.7MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. * TraceAbstraction took 1868.49ms. Allocated memory is still 142.6MB. Free memory was 76.7MB in the beginning and 81.2MB in the end (delta: -4.5MB). There was no memory consumed. Max. memory is 16.1GB. * Witness Printer took 3.99ms. Allocated memory is still 142.6MB. Free memory was 81.2MB in the beginning and 81.2MB in the end (delta: 24.1kB). 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 64, overapproximation of someBinaryFLOATComparisonOperation at line 77, overapproximation of someBinaryFLOATComparisonOperation at line 51, overapproximation of someBinaryFLOATComparisonOperation at line 89, overapproximation of someBinaryFLOATComparisonOperation at line 66, overapproximation of someBinaryDOUBLEComparisonOperation at line 41, overapproximation of someBinaryDOUBLEComparisonOperation at line 89, overapproximation of someBinaryDOUBLEComparisonOperation at line 69, overapproximation of someBinaryDOUBLEComparisonOperation at line 73, overapproximation of someBinaryDOUBLEComparisonOperation at line 71, overapproximation of someBinaryDOUBLEComparisonOperation at line 75, overapproximation of someBinaryDOUBLEComparisonOperation at line 68, overapproximation of someBinaryArithmeticFLOAToperation at line 48. Possible FailurePath: [L21] unsigned char isInitial = 0; [L22] signed short int var_1_1 = 64; [L23] float var_1_4 = 64.4; [L24] float var_1_5 = 0.2; [L25] double var_1_8 = 31.75; [L26] double var_1_9 = 50.375; [L27] double var_1_10 = 99.25; [L28] double var_1_11 = 16.4; [L29] double var_1_12 = 64.5; [L30] float var_1_13 = 8.75; [L31] float var_1_14 = 127.1; [L32] unsigned short int var_1_15 = 5; [L33] unsigned char var_1_18 = 0; [L34] unsigned char var_1_19 = 0; [L35] unsigned char var_1_20 = 0; [L36] unsigned char var_1_21 = 8; [L37] double last_1_var_1_8 = 31.75; VAL [isInitial=0, last_1_var_1_8=127/4, var_1_10=397/4, var_1_11=82/5, var_1_12=129/2, var_1_13=35/4, var_1_14=1271/10, var_1_15=5, var_1_18=0, var_1_19=0, var_1_1=64, var_1_20=0, var_1_21=8, var_1_4=322/5, var_1_5=1/5, var_1_8=127/4, var_1_9=403/8] [L93] isInitial = 1 [L94] FCALL initially() [L95] int k_loop; [L96] k_loop = 0 VAL [isInitial=1, k_loop=0, last_1_var_1_8=127/4, var_1_10=397/4, var_1_11=82/5, var_1_12=129/2, var_1_13=35/4, var_1_14=1271/10, var_1_15=5, var_1_18=0, var_1_19=0, var_1_1=64, var_1_20=0, var_1_21=8, var_1_4=322/5, var_1_5=1/5, var_1_8=127/4, var_1_9=403/8] [L96] COND TRUE k_loop < 1 [L97] CALL updateLastVariables() [L86] last_1_var_1_8 = var_1_8 VAL [isInitial=1, last_1_var_1_8=127/4, var_1_10=397/4, var_1_11=82/5, var_1_12=129/2, var_1_13=35/4, var_1_14=1271/10, var_1_15=5, var_1_18=0, var_1_19=0, var_1_1=64, var_1_20=0, var_1_21=8, var_1_4=322/5, var_1_5=1/5, var_1_8=127/4, var_1_9=403/8] [L97] RET updateLastVariables() [L98] CALL updateVariables() [L63] var_1_4 = __VERIFIER_nondet_float() [L64] CALL assume_abort_if_not((var_1_4 >= 0.0F && var_1_4 <= -1.0e-20F) || (var_1_4 <= 9223372.036854776000e+12F && var_1_4 >= 1.0e-20F )) VAL [\old(cond)=1, isInitial=1, last_1_var_1_8=127/4, var_1_10=397/4, var_1_11=82/5, var_1_12=129/2, var_1_13=35/4, var_1_14=1271/10, var_1_15=5, var_1_18=0, var_1_19=0, var_1_1=64, var_1_20=0, var_1_21=8, var_1_5=1/5, var_1_8=127/4, var_1_9=403/8] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_8=127/4, var_1_10=397/4, var_1_11=82/5, var_1_12=129/2, var_1_13=35/4, var_1_14=1271/10, var_1_15=5, var_1_18=0, var_1_19=0, var_1_1=64, var_1_20=0, var_1_21=8, var_1_5=1/5, var_1_8=127/4, var_1_9=403/8] [L64] RET assume_abort_if_not((var_1_4 >= 0.0F && var_1_4 <= -1.0e-20F) || (var_1_4 <= 9223372.036854776000e+12F && var_1_4 >= 1.0e-20F )) VAL [isInitial=1, last_1_var_1_8=127/4, var_1_10=397/4, var_1_11=82/5, var_1_12=129/2, var_1_13=35/4, var_1_14=1271/10, var_1_15=5, var_1_18=0, var_1_19=0, var_1_1=64, var_1_20=0, var_1_21=8, var_1_5=1/5, var_1_8=127/4, var_1_9=403/8] [L65] var_1_5 = __VERIFIER_nondet_float() [L66] CALL assume_abort_if_not((var_1_5 >= 0.0F && var_1_5 <= -1.0e-20F) || (var_1_5 <= 9223372.036854776000e+12F && var_1_5 >= 1.0e-20F )) VAL [\old(cond)=1, isInitial=1, last_1_var_1_8=127/4, var_1_10=397/4, var_1_11=82/5, var_1_12=129/2, var_1_13=35/4, var_1_14=1271/10, var_1_15=5, var_1_18=0, var_1_19=0, var_1_1=64, var_1_20=0, var_1_21=8, var_1_8=127/4, var_1_9=403/8] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_8=127/4, var_1_10=397/4, var_1_11=82/5, var_1_12=129/2, var_1_13=35/4, var_1_14=1271/10, var_1_15=5, var_1_18=0, var_1_19=0, var_1_1=64, var_1_20=0, var_1_21=8, var_1_8=127/4, var_1_9=403/8] [L66] RET assume_abort_if_not((var_1_5 >= 0.0F && var_1_5 <= -1.0e-20F) || (var_1_5 <= 9223372.036854776000e+12F && var_1_5 >= 1.0e-20F )) VAL [isInitial=1, last_1_var_1_8=127/4, var_1_10=397/4, var_1_11=82/5, var_1_12=129/2, var_1_13=35/4, var_1_14=1271/10, var_1_15=5, var_1_18=0, var_1_19=0, var_1_1=64, var_1_20=0, var_1_21=8, var_1_8=127/4, var_1_9=403/8] [L67] var_1_9 = __VERIFIER_nondet_double() [L68] CALL assume_abort_if_not((var_1_9 >= -922337.2036854776000e+13F && var_1_9 <= -1.0e-20F) || (var_1_9 <= 9223372.036854776000e+12F && var_1_9 >= 1.0e-20F )) VAL [\old(cond)=1, isInitial=1, last_1_var_1_8=127/4, var_1_10=397/4, var_1_11=82/5, var_1_12=129/2, var_1_13=35/4, var_1_14=1271/10, var_1_15=5, var_1_18=0, var_1_19=0, var_1_1=64, var_1_20=0, var_1_21=8, var_1_8=127/4] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_8=127/4, var_1_10=397/4, var_1_11=82/5, var_1_12=129/2, var_1_13=35/4, var_1_14=1271/10, var_1_15=5, var_1_18=0, var_1_19=0, var_1_1=64, var_1_20=0, var_1_21=8, var_1_8=127/4] [L68] RET assume_abort_if_not((var_1_9 >= -922337.2036854776000e+13F && var_1_9 <= -1.0e-20F) || (var_1_9 <= 9223372.036854776000e+12F && var_1_9 >= 1.0e-20F )) VAL [isInitial=1, last_1_var_1_8=127/4, var_1_10=397/4, var_1_11=82/5, var_1_12=129/2, var_1_13=35/4, var_1_14=1271/10, var_1_15=5, var_1_18=0, var_1_19=0, var_1_1=64, var_1_20=0, var_1_21=8, var_1_8=127/4] [L69] CALL assume_abort_if_not(var_1_9 != 0.0F) VAL [\old(cond)=1, isInitial=1, last_1_var_1_8=127/4, var_1_10=397/4, var_1_11=82/5, var_1_12=129/2, var_1_13=35/4, var_1_14=1271/10, var_1_15=5, var_1_18=0, var_1_19=0, var_1_1=64, var_1_20=0, var_1_21=8, var_1_8=127/4] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_8=127/4, var_1_10=397/4, var_1_11=82/5, var_1_12=129/2, var_1_13=35/4, var_1_14=1271/10, var_1_15=5, var_1_18=0, var_1_19=0, var_1_1=64, var_1_20=0, var_1_21=8, var_1_8=127/4] [L69] RET assume_abort_if_not(var_1_9 != 0.0F) VAL [isInitial=1, last_1_var_1_8=127/4, var_1_10=397/4, var_1_11=82/5, var_1_12=129/2, var_1_13=35/4, var_1_14=1271/10, var_1_15=5, var_1_18=0, var_1_19=0, var_1_1=64, var_1_20=0, var_1_21=8, var_1_8=127/4] [L70] var_1_10 = __VERIFIER_nondet_double() [L71] CALL assume_abort_if_not((var_1_10 >= 0.0F && var_1_10 <= -1.0e-20F) || (var_1_10 <= 4611686.018427382800e+12F && var_1_10 >= 1.0e-20F )) VAL [\old(cond)=1, isInitial=1, last_1_var_1_8=127/4, var_1_11=82/5, var_1_12=129/2, var_1_13=35/4, var_1_14=1271/10, var_1_15=5, var_1_18=0, var_1_19=0, var_1_1=64, var_1_20=0, var_1_21=8, var_1_8=127/4] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_8=127/4, var_1_11=82/5, var_1_12=129/2, var_1_13=35/4, var_1_14=1271/10, var_1_15=5, var_1_18=0, var_1_19=0, var_1_1=64, var_1_20=0, var_1_21=8, var_1_8=127/4] [L71] RET assume_abort_if_not((var_1_10 >= 0.0F && var_1_10 <= -1.0e-20F) || (var_1_10 <= 4611686.018427382800e+12F && var_1_10 >= 1.0e-20F )) VAL [isInitial=1, last_1_var_1_8=127/4, var_1_11=82/5, var_1_12=129/2, var_1_13=35/4, var_1_14=1271/10, var_1_15=5, var_1_18=0, var_1_19=0, var_1_1=64, var_1_20=0, var_1_21=8, var_1_8=127/4] [L72] var_1_11 = __VERIFIER_nondet_double() [L73] CALL assume_abort_if_not((var_1_11 >= 0.0F && var_1_11 <= -1.0e-20F) || (var_1_11 <= 4611686.018427382800e+12F && var_1_11 >= 1.0e-20F )) VAL [\old(cond)=1, isInitial=1, last_1_var_1_8=127/4, var_1_12=129/2, var_1_13=35/4, var_1_14=1271/10, var_1_15=5, var_1_18=0, var_1_19=0, var_1_1=64, var_1_20=0, var_1_21=8, var_1_8=127/4] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_8=127/4, var_1_12=129/2, var_1_13=35/4, var_1_14=1271/10, var_1_15=5, var_1_18=0, var_1_19=0, var_1_1=64, var_1_20=0, var_1_21=8, var_1_8=127/4] [L73] RET assume_abort_if_not((var_1_11 >= 0.0F && var_1_11 <= -1.0e-20F) || (var_1_11 <= 4611686.018427382800e+12F && var_1_11 >= 1.0e-20F )) VAL [isInitial=1, last_1_var_1_8=127/4, var_1_12=129/2, var_1_13=35/4, var_1_14=1271/10, var_1_15=5, var_1_18=0, var_1_19=0, var_1_1=64, var_1_20=0, var_1_21=8, var_1_8=127/4] [L74] var_1_12 = __VERIFIER_nondet_double() [L75] CALL assume_abort_if_not((var_1_12 >= 0.0F && var_1_12 <= -1.0e-20F) || (var_1_12 <= 9223372.036854765600e+12F && var_1_12 >= 1.0e-20F )) VAL [\old(cond)=1, isInitial=1, last_1_var_1_8=127/4, var_1_13=35/4, var_1_14=1271/10, var_1_15=5, var_1_18=0, var_1_19=0, var_1_1=64, var_1_20=0, var_1_21=8, var_1_8=127/4] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_8=127/4, var_1_13=35/4, var_1_14=1271/10, var_1_15=5, var_1_18=0, var_1_19=0, var_1_1=64, var_1_20=0, var_1_21=8, var_1_8=127/4] [L75] RET assume_abort_if_not((var_1_12 >= 0.0F && var_1_12 <= -1.0e-20F) || (var_1_12 <= 9223372.036854765600e+12F && var_1_12 >= 1.0e-20F )) VAL [isInitial=1, last_1_var_1_8=127/4, var_1_13=35/4, var_1_14=1271/10, var_1_15=5, var_1_18=0, var_1_19=0, var_1_1=64, var_1_20=0, var_1_21=8, var_1_8=127/4] [L76] var_1_14 = __VERIFIER_nondet_float() [L77] CALL assume_abort_if_not((var_1_14 >= -461168.6018427382800e+13F && var_1_14 <= -1.0e-20F) || (var_1_14 <= 4611686.018427382800e+12F && var_1_14 >= 1.0e-20F )) VAL [\old(cond)=1, isInitial=1, last_1_var_1_8=127/4, var_1_13=35/4, var_1_15=5, var_1_18=0, var_1_19=0, var_1_1=64, var_1_20=0, var_1_21=8, var_1_8=127/4] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_8=127/4, var_1_13=35/4, var_1_15=5, var_1_18=0, var_1_19=0, var_1_1=64, var_1_20=0, var_1_21=8, var_1_8=127/4] [L77] RET assume_abort_if_not((var_1_14 >= -461168.6018427382800e+13F && var_1_14 <= -1.0e-20F) || (var_1_14 <= 4611686.018427382800e+12F && var_1_14 >= 1.0e-20F )) VAL [isInitial=1, last_1_var_1_8=127/4, var_1_13=35/4, var_1_15=5, var_1_18=0, var_1_19=0, var_1_1=64, var_1_20=0, var_1_21=8, var_1_8=127/4] [L78] var_1_19 = __VERIFIER_nondet_uchar() [L79] CALL assume_abort_if_not(var_1_19 >= 0) VAL [\old(cond)=1, isInitial=1, last_1_var_1_8=127/4, var_1_13=35/4, var_1_15=5, var_1_18=0, var_1_1=64, var_1_20=0, var_1_21=8, var_1_8=127/4] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_8=127/4, var_1_13=35/4, var_1_15=5, var_1_18=0, var_1_1=64, var_1_20=0, var_1_21=8, var_1_8=127/4] [L79] RET assume_abort_if_not(var_1_19 >= 0) VAL [isInitial=1, last_1_var_1_8=127/4, var_1_13=35/4, var_1_15=5, var_1_18=0, var_1_1=64, var_1_20=0, var_1_21=8, var_1_8=127/4] [L80] CALL assume_abort_if_not(var_1_19 <= 0) VAL [\old(cond)=1, isInitial=1, last_1_var_1_8=127/4, var_1_13=35/4, var_1_15=5, var_1_18=0, var_1_19=0, var_1_1=64, var_1_20=0, var_1_21=8, var_1_8=127/4] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_8=127/4, var_1_13=35/4, var_1_15=5, var_1_18=0, var_1_19=0, var_1_1=64, var_1_20=0, var_1_21=8, var_1_8=127/4] [L80] RET assume_abort_if_not(var_1_19 <= 0) VAL [isInitial=1, last_1_var_1_8=127/4, var_1_13=35/4, var_1_15=5, var_1_18=0, var_1_19=0, var_1_1=64, var_1_20=0, var_1_21=8, var_1_8=127/4] [L81] var_1_21 = __VERIFIER_nondet_uchar() [L82] CALL assume_abort_if_not(var_1_21 >= 0) VAL [\old(cond)=1, isInitial=1, last_1_var_1_8=127/4, var_1_13=35/4, var_1_15=5, var_1_18=0, var_1_19=0, var_1_1=64, var_1_20=0, var_1_8=127/4] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_8=127/4, var_1_13=35/4, var_1_15=5, var_1_18=0, var_1_19=0, var_1_1=64, var_1_20=0, var_1_8=127/4] [L82] RET assume_abort_if_not(var_1_21 >= 0) VAL [isInitial=1, last_1_var_1_8=127/4, var_1_13=35/4, var_1_15=5, var_1_18=0, var_1_19=0, var_1_1=64, var_1_20=0, var_1_8=127/4] [L83] CALL assume_abort_if_not(var_1_21 <= 254) VAL [\old(cond)=1, isInitial=1, last_1_var_1_8=127/4, var_1_13=35/4, var_1_15=5, var_1_18=0, var_1_19=0, var_1_1=64, var_1_20=0, var_1_21=254, var_1_8=127/4] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, last_1_var_1_8=127/4, var_1_13=35/4, var_1_15=5, var_1_18=0, var_1_19=0, var_1_1=64, var_1_20=0, var_1_21=254, var_1_8=127/4] [L83] RET assume_abort_if_not(var_1_21 <= 254) VAL [isInitial=1, last_1_var_1_8=127/4, var_1_13=35/4, var_1_15=5, var_1_18=0, var_1_19=0, var_1_1=64, var_1_20=0, var_1_21=254, var_1_8=127/4] [L98] RET updateVariables() [L99] CALL step() [L41] COND FALSE !((- (var_1_5 / var_1_9)) != last_1_var_1_8) [L46] var_1_8 = var_1_12 VAL [isInitial=1, last_1_var_1_8=127/4, var_1_12=259, var_1_13=35/4, var_1_15=5, var_1_18=0, var_1_19=0, var_1_1=64, var_1_20=0, var_1_21=254, var_1_8=259] [L48] var_1_13 = (128.75f + var_1_14) [L49] var_1_18 = var_1_19 [L50] var_1_20 = var_1_21 VAL [isInitial=1, last_1_var_1_8=127/4, var_1_12=259, var_1_15=5, var_1_18=0, var_1_19=0, var_1_1=64, var_1_20=254, var_1_21=254, var_1_8=259] [L51] COND FALSE !(var_1_13 != ((((var_1_13) > ((var_1_4 - var_1_5))) ? (var_1_13) : ((var_1_4 - var_1_5))))) [L56] var_1_1 = var_1_20 VAL [isInitial=1, last_1_var_1_8=127/4, var_1_12=259, var_1_15=5, var_1_18=0, var_1_19=0, var_1_1=254, var_1_20=254, var_1_21=254, var_1_8=259] [L58] COND FALSE !(\read(var_1_18)) VAL [isInitial=1, last_1_var_1_8=127/4, var_1_12=259, var_1_15=5, var_1_18=0, var_1_19=0, var_1_1=254, var_1_20=254, var_1_21=254, var_1_8=259] [L99] RET step() [L100] CALL, EXPR property() [L89-L90] return ((((((var_1_13 != ((((var_1_13) > ((var_1_4 - var_1_5))) ? (var_1_13) : ((var_1_4 - var_1_5))))) ? (var_1_18 ? (var_1_1 == ((signed short int) var_1_20)) : 1) : (var_1_1 == ((signed short int) var_1_20))) && (((- (var_1_5 / var_1_9)) != last_1_var_1_8) ? ((var_1_4 != (- var_1_9)) ? (var_1_8 == ((double) ((var_1_10 + var_1_11) - var_1_12))) : 1) : (var_1_8 == ((double) var_1_12)))) && (var_1_13 == ((float) (128.75f + var_1_14)))) && (var_1_18 ? (var_1_15 == ((unsigned short int) (var_1_20 + var_1_20))) : 1)) && (var_1_18 == ((unsigned char) var_1_19))) && (var_1_20 == ((unsigned char) var_1_21)) ; VAL [\result=0, isInitial=1, last_1_var_1_8=127/4, var_1_12=259, var_1_15=5, var_1_18=0, var_1_19=0, var_1_1=254, var_1_20=254, var_1_21=254, var_1_8=259] [L100] RET, EXPR property() [L100] CALL __VERIFIER_assert(property()) [L19] COND TRUE !(cond) VAL [isInitial=1, last_1_var_1_8=127/4, var_1_12=259, var_1_15=5, var_1_18=0, var_1_19=0, var_1_1=254, var_1_20=254, var_1_21=254, var_1_8=259] [L19] reach_error() VAL [isInitial=1, last_1_var_1_8=127/4, var_1_12=259, var_1_15=5, var_1_18=0, var_1_19=0, var_1_1=254, var_1_20=254, var_1_21=254, var_1_8=259] - StatisticsResult: Ultimate Automizer benchmark data CFG has 2 procedures, 45 locations, 1 error locations. Started 1 CEGAR loops. OverallTime: 1.8s, OverallIterations: 3, TraceHistogramMax: 12, PathProgramHistogramMax: 1, EmptinessCheckTime: 0.0s, AutomataDifference: 0.2s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.0s, InitialAbstractionConstructionTime: 0.0s, HoareTripleCheckerStatistics: 0 mSolverCounterUnknown, 112 SdHoareTripleChecker+Valid, 0.1s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 110 mSDsluCounter, 151 SdHoareTripleChecker+Invalid, 0.1s Time, 0 mProtectedAction, 0 SdHoareTripleChecker+Unchecked, 0 IncrementalHoareTripleChecker+Unchecked, 51 mSDsCounter, 77 IncrementalHoareTripleChecker+Valid, 0 mProtectedPredicate, 81 IncrementalHoareTripleChecker+Invalid, 158 SdHoareTripleChecker+Unknown, 0 mSolverCounterNotChecked, 77 mSolverCounterUnsat, 100 mSDtfsCounter, 81 mSolverCounterSat, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Unknown, PredicateUnifierStatistics: 0 DeclaredPredicates, 260 GetRequests, 244 SyntacticMatches, 3 SemanticMatches, 13 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 14 ImplicationChecksByTransitivity, 0.1s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=46occurred in iteration=2, InterpolantAutomatonStates: 12, 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, 2 MinimizatonAttempts, 4 StatesRemovedByMinimization, 1 NontrivialMinimizations, HoareAnnotationStatistics: No data available, RefinementEngineStatistics: TRACE_CHECK: 0.0s SsaConstructionTime, 0.2s SatisfiabilityAnalysisTime, 0.6s InterpolantComputationTime, 410 NumberOfCodeBlocks, 410 NumberOfCodeBlocksAsserted, 5 NumberOfCheckSat, 405 ConstructedInterpolants, 0 QuantifiedInterpolants, 579 SizeOfPredicates, 2 NumberOfNonLiveVariables, 412 ConjunctsInSsa, 9 ConjunctsInUnsatCore, 5 InterpolantComputations, 1 PerfectInterpolantSequences, 1280/1320 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:18:06,063 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 (1)] Ended with exit code 0 Received shutdown request... --- End real Ultimate output --- Execution finished normally Using bit-precise analysis Retrying with bit-precise analysis ### Bit-precise run ### Calling Ultimate with: /root/.sdkman/candidates/java/21.0.5-tem/bin/java -Dosgi.configuration.area=/storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/config -Xmx15G -Xms4m -jar /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/plugins/org.eclipse.equinox.launcher_1.6.800.v20240513-1750.jar -data @noDefault -ultimatedata /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data -tc /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/config/AutomizerReach.xml -i ../sv-benchmarks/c/hardness-nfm22/hardness_loopvsstraightlinecode_25-1loop_file-43.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 e6650119a7fe3ff36ff850c77813e4f9e9500a338e3ffc0b002d1498ea71ee91 --- Real Ultimate output --- This is Ultimate 0.3.0-?-551b009-m [2025-01-09 13:18:07,896 INFO L188 SettingsManager]: Resetting all preferences to default values... [2025-01-09 13:18:07,972 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:18:07,981 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2025-01-09 13:18:07,981 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2025-01-09 13:18:08,006 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2025-01-09 13:18:08,006 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2025-01-09 13:18:08,006 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2025-01-09 13:18:08,007 INFO L151 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2025-01-09 13:18:08,007 INFO L153 SettingsManager]: * Use memory slicer=true [2025-01-09 13:18:08,007 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2025-01-09 13:18:08,007 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2025-01-09 13:18:08,007 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2025-01-09 13:18:08,007 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2025-01-09 13:18:08,007 INFO L153 SettingsManager]: * Use SBE=true [2025-01-09 13:18:08,007 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2025-01-09 13:18:08,008 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2025-01-09 13:18:08,008 INFO L153 SettingsManager]: * sizeof long=4 [2025-01-09 13:18:08,008 INFO L153 SettingsManager]: * sizeof POINTER=4 [2025-01-09 13:18:08,008 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2025-01-09 13:18:08,008 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2025-01-09 13:18:08,008 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2025-01-09 13:18:08,008 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2025-01-09 13:18:08,008 INFO L153 SettingsManager]: * Adapt memory model on pointer casts if necessary=true [2025-01-09 13:18:08,008 INFO L153 SettingsManager]: * Use bitvectors instead of ints=true [2025-01-09 13:18:08,008 INFO L153 SettingsManager]: * Memory model=HoenickeLindenmann_4ByteResolution [2025-01-09 13:18:08,008 INFO L153 SettingsManager]: * sizeof long double=12 [2025-01-09 13:18:08,008 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2025-01-09 13:18:08,008 INFO L153 SettingsManager]: * Behaviour of calls to undefined functions=OVERAPPROXIMATE_BEHAVIOUR [2025-01-09 13:18:08,008 INFO L153 SettingsManager]: * Use constant arrays=true [2025-01-09 13:18:08,008 INFO L151 SettingsManager]: Preferences of IcfgBuilder differ from their defaults: [2025-01-09 13:18:08,008 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2025-01-09 13:18:08,008 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2025-01-09 13:18:08,008 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2025-01-09 13:18:08,008 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-01-09 13:18:08,009 INFO L151 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2025-01-09 13:18:08,009 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2025-01-09 13:18:08,009 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2025-01-09 13:18:08,009 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2025-01-09 13:18:08,009 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-01-09 13:18:08,009 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2025-01-09 13:18:08,009 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2025-01-09 13:18:08,009 INFO L153 SettingsManager]: * Compute procedure contracts=false [2025-01-09 13:18:08,009 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2025-01-09 13:18:08,009 INFO L153 SettingsManager]: * Trace refinement strategy=FOX [2025-01-09 13:18:08,009 INFO L153 SettingsManager]: * Command for external solver=cvc4 --incremental --print-success --lang smt [2025-01-09 13:18:08,009 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2025-01-09 13:18:08,009 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2025-01-09 13:18:08,009 INFO L153 SettingsManager]: * Order on configurations for Petri net unfoldings=DBO [2025-01-09 13:18:08,009 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2025-01-09 13:18:08,009 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 -> e6650119a7fe3ff36ff850c77813e4f9e9500a338e3ffc0b002d1498ea71ee91 [2025-01-09 13:18:08,234 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2025-01-09 13:18:08,239 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2025-01-09 13:18:08,241 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2025-01-09 13:18:08,242 INFO L270 PluginConnector]: Initializing CDTParser... [2025-01-09 13:18:08,243 INFO L274 PluginConnector]: CDTParser initialized [2025-01-09 13:18:08,243 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/hardness-nfm22/hardness_loopvsstraightlinecode_25-1loop_file-43.i [2025-01-09 13:18:09,376 INFO L533 CDTParser]: Created temporary CDT project at /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/4d2cba81e/270edd8ea4ff4735837c7be1674fb361/FLAG0f4943d66 [2025-01-09 13:18:09,579 INFO L384 CDTParser]: Found 1 translation units. [2025-01-09 13:18:09,580 INFO L180 CDTParser]: Scanning /storage/repos/ultimate-jdk21/releaseScripts/default/sv-benchmarks/c/hardness-nfm22/hardness_loopvsstraightlinecode_25-1loop_file-43.i [2025-01-09 13:18:09,586 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/4d2cba81e/270edd8ea4ff4735837c7be1674fb361/FLAG0f4943d66 [2025-01-09 13:18:09,600 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/4d2cba81e/270edd8ea4ff4735837c7be1674fb361 [2025-01-09 13:18:09,603 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2025-01-09 13:18:09,604 INFO L133 ToolchainWalker]: Walking toolchain with 6 elements. [2025-01-09 13:18:09,605 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2025-01-09 13:18:09,606 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2025-01-09 13:18:09,609 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2025-01-09 13:18:09,609 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 09.01 01:18:09" (1/1) ... [2025-01-09 13:18:09,610 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@1f7a081e and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:18:09, skipping insertion in model container [2025-01-09 13:18:09,610 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 09.01 01:18:09" (1/1) ... [2025-01-09 13:18:09,624 INFO L175 MainTranslator]: Built tables and reachable declarations [2025-01-09 13:18:09,728 WARN L250 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate-jdk21/releaseScripts/default/sv-benchmarks/c/hardness-nfm22/hardness_loopvsstraightlinecode_25-1loop_file-43.i[915,928] [2025-01-09 13:18:09,763 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-01-09 13:18:09,776 INFO L200 MainTranslator]: Completed pre-run [2025-01-09 13:18:09,783 WARN L250 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate-jdk21/releaseScripts/default/sv-benchmarks/c/hardness-nfm22/hardness_loopvsstraightlinecode_25-1loop_file-43.i[915,928] [2025-01-09 13:18:09,795 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-01-09 13:18:09,809 INFO L204 MainTranslator]: Completed translation [2025-01-09 13:18:09,809 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:18:09 WrapperNode [2025-01-09 13:18:09,809 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2025-01-09 13:18:09,810 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2025-01-09 13:18:09,810 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2025-01-09 13:18:09,810 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2025-01-09 13:18:09,814 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:18:09" (1/1) ... [2025-01-09 13:18:09,820 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:18:09" (1/1) ... [2025-01-09 13:18:09,837 INFO L138 Inliner]: procedures = 27, calls = 25, calls flagged for inlining = 8, calls inlined = 8, statements flattened = 105 [2025-01-09 13:18:09,837 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2025-01-09 13:18:09,838 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2025-01-09 13:18:09,838 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2025-01-09 13:18:09,838 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2025-01-09 13:18:09,848 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:18:09" (1/1) ... [2025-01-09 13:18:09,848 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:18:09" (1/1) ... [2025-01-09 13:18:09,850 INFO L184 PluginConnector]: Executing the observer MemorySlicer from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:18:09" (1/1) ... [2025-01-09 13:18:09,868 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:18:09,868 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:18:09" (1/1) ... [2025-01-09 13:18:09,868 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:18:09" (1/1) ... [2025-01-09 13:18:09,874 INFO L184 PluginConnector]: Executing the observer ReplaceArrayAssignments from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:18:09" (1/1) ... [2025-01-09 13:18:09,874 INFO L184 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:18:09" (1/1) ... [2025-01-09 13:18:09,876 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:18:09" (1/1) ... [2025-01-09 13:18:09,877 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:18:09" (1/1) ... [2025-01-09 13:18:09,877 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:18:09" (1/1) ... [2025-01-09 13:18:09,879 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2025-01-09 13:18:09,879 INFO L112 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2025-01-09 13:18:09,879 INFO L270 PluginConnector]: Initializing RCFGBuilder... [2025-01-09 13:18:09,879 INFO L274 PluginConnector]: RCFGBuilder initialized [2025-01-09 13:18:09,880 INFO L184 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:18:09" (1/1) ... [2025-01-09 13:18:09,883 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-01-09 13:18:09,894 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-09 13:18:09,907 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:18:09,910 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:18:09,927 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2025-01-09 13:18:09,928 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~intINTTYPE1#0 [2025-01-09 13:18:09,928 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2025-01-09 13:18:09,928 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2025-01-09 13:18:09,928 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2025-01-09 13:18:09,928 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2025-01-09 13:18:09,982 INFO L234 CfgBuilder]: Building ICFG [2025-01-09 13:18:09,984 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2025-01-09 13:18:25,331 INFO L? ?]: Removed 9 outVars from TransFormulas that were not future-live. [2025-01-09 13:18:25,332 INFO L283 CfgBuilder]: Performing block encoding [2025-01-09 13:18:25,337 INFO L307 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2025-01-09 13:18:25,338 INFO L312 CfgBuilder]: Removed 0 assume(true) statements. [2025-01-09 13:18:25,338 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 09.01 01:18:25 BoogieIcfgContainer [2025-01-09 13:18:25,338 INFO L131 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2025-01-09 13:18:25,340 INFO L112 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2025-01-09 13:18:25,340 INFO L270 PluginConnector]: Initializing TraceAbstraction... [2025-01-09 13:18:25,343 INFO L274 PluginConnector]: TraceAbstraction initialized [2025-01-09 13:18:25,344 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 09.01 01:18:09" (1/3) ... [2025-01-09 13:18:25,344 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@610d7dde and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 09.01 01:18:25, skipping insertion in model container [2025-01-09 13:18:25,344 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 01:18:09" (2/3) ... [2025-01-09 13:18:25,344 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@610d7dde and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 09.01 01:18:25, skipping insertion in model container [2025-01-09 13:18:25,344 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 09.01 01:18:25" (3/3) ... [2025-01-09 13:18:25,345 INFO L128 eAbstractionObserver]: Analyzing ICFG hardness_loopvsstraightlinecode_25-1loop_file-43.i [2025-01-09 13:18:25,355 INFO L216 ceAbstractionStarter]: Automizer settings: Hoare:LoopHeads NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2025-01-09 13:18:25,356 INFO L151 ceAbstractionStarter]: Applying trace abstraction to ICFG hardness_loopvsstraightlinecode_25-1loop_file-43.i that has 2 procedures, 45 locations, 1 initial locations, 1 loop locations, and 1 error locations. [2025-01-09 13:18:25,392 INFO L332 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2025-01-09 13:18:25,400 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;@42e2e55f, mLbeIndependenceSettings=[IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=false, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2025-01-09 13:18:25,400 INFO L334 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2025-01-09 13:18:25,403 INFO L276 IsEmpty]: Start isEmpty. Operand has 45 states, 30 states have (on average 1.3) internal successors, (39), 31 states have internal predecessors, (39), 12 states have call successors, (12), 1 states have call predecessors, (12), 1 states have return successors, (12), 12 states have call predecessors, (12), 12 states have call successors, (12) [2025-01-09 13:18:25,408 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 83 [2025-01-09 13:18:25,408 INFO L210 NwaCegarLoop]: Found error trace [2025-01-09 13:18:25,408 INFO L218 NwaCegarLoop]: trace histogram [12, 12, 12, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 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:18:25,409 INFO L396 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2025-01-09 13:18:25,412 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-09 13:18:25,412 INFO L85 PathProgramCache]: Analyzing trace with hash -1242397310, now seen corresponding path program 1 times [2025-01-09 13:18:25,418 INFO L118 FreeRefinementEngine]: Executing refinement strategy FOX [2025-01-09 13:18:25,419 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [2100669295] [2025-01-09 13:18:25,419 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-01-09 13:18:25,419 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:18:25,419 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/mathsat [2025-01-09 13:18:25,421 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:18:25,425 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:18:25,484 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 82 statements into 1 equivalence classes. [2025-01-09 13:18:26,314 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 82 of 82 statements. [2025-01-09 13:18:26,314 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-09 13:18:26,314 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-09 13:18:26,341 INFO L256 TraceCheckSpWp]: Trace formula consists of 143 conjuncts, 1 conjuncts are in the unsatisfiable core [2025-01-09 13:18:26,346 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-01-09 13:18:26,378 INFO L134 CoverageAnalysis]: Checked inductivity of 264 backedges. 62 proven. 0 refuted. 0 times theorem prover too weak. 202 trivial. 0 not checked. [2025-01-09 13:18:26,379 INFO L308 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2025-01-09 13:18:26,379 INFO L136 FreeRefinementEngine]: Strategy FOX found an infeasible trace [2025-01-09 13:18:26,379 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [2100669295] [2025-01-09 13:18:26,380 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleMathsat [2100669295] provided 1 perfect and 0 imperfect interpolant sequences [2025-01-09 13:18:26,380 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-01-09 13:18:26,380 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2025-01-09 13:18:26,381 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [897798778] [2025-01-09 13:18:26,381 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-01-09 13:18:26,383 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 2 states [2025-01-09 13:18:26,384 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy FOX [2025-01-09 13:18:26,395 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2025-01-09 13:18:26,395 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2025-01-09 13:18:26,396 INFO L87 Difference]: Start difference. First operand has 45 states, 30 states have (on average 1.3) internal successors, (39), 31 states have internal predecessors, (39), 12 states have call successors, (12), 1 states have call predecessors, (12), 1 states have return successors, (12), 12 states have call predecessors, (12), 12 states have call successors, (12) Second operand has 2 states, 2 states have (on average 14.5) internal successors, (29), 2 states have internal predecessors, (29), 2 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (12), 2 states have call predecessors, (12), 2 states have call successors, (12) [2025-01-09 13:18:26,411 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2025-01-09 13:18:26,411 INFO L93 Difference]: Finished difference Result 87 states and 135 transitions. [2025-01-09 13:18:26,412 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2025-01-09 13:18:26,412 INFO L78 Accepts]: Start accepts. Automaton has has 2 states, 2 states have (on average 14.5) internal successors, (29), 2 states have internal predecessors, (29), 2 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (12), 2 states have call predecessors, (12), 2 states have call successors, (12) Word has length 82 [2025-01-09 13:18:26,413 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2025-01-09 13:18:26,416 INFO L225 Difference]: With dead ends: 87 [2025-01-09 13:18:26,417 INFO L226 Difference]: Without dead ends: 42 [2025-01-09 13:18:26,419 INFO L434 NwaCegarLoop]: 0 DeclaredPredicates, 81 GetRequests, 81 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:18:26,421 INFO L435 NwaCegarLoop]: 61 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, 61 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:18:26,421 INFO L436 NwaCegarLoop]: SdHoareTripleChecker [0 Valid, 61 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 0 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2025-01-09 13:18:26,429 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 42 states. [2025-01-09 13:18:26,441 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 42 to 42. [2025-01-09 13:18:26,443 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 42 states, 28 states have (on average 1.2142857142857142) internal successors, (34), 28 states have internal predecessors, (34), 12 states have call successors, (12), 1 states have call predecessors, (12), 1 states have return successors, (12), 12 states have call predecessors, (12), 12 states have call successors, (12) [2025-01-09 13:18:26,449 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 42 states to 42 states and 58 transitions. [2025-01-09 13:18:26,451 INFO L78 Accepts]: Start accepts. Automaton has 42 states and 58 transitions. Word has length 82 [2025-01-09 13:18:26,451 INFO L84 Accepts]: Finished accepts. word is rejected. [2025-01-09 13:18:26,452 INFO L471 AbstractCegarLoop]: Abstraction has 42 states and 58 transitions. [2025-01-09 13:18:26,452 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 2 states, 2 states have (on average 14.5) internal successors, (29), 2 states have internal predecessors, (29), 2 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (12), 2 states have call predecessors, (12), 2 states have call successors, (12) [2025-01-09 13:18:26,452 INFO L276 IsEmpty]: Start isEmpty. Operand 42 states and 58 transitions. [2025-01-09 13:18:26,455 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 83 [2025-01-09 13:18:26,456 INFO L210 NwaCegarLoop]: Found error trace [2025-01-09 13:18:26,456 INFO L218 NwaCegarLoop]: trace histogram [12, 12, 12, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 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:18:26,484 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (2)] Ended with exit code 0 [2025-01-09 13:18:26,657 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:18:26,657 INFO L396 AbstractCegarLoop]: === Iteration 2 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2025-01-09 13:18:26,657 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-09 13:18:26,658 INFO L85 PathProgramCache]: Analyzing trace with hash 516108990, now seen corresponding path program 1 times [2025-01-09 13:18:26,658 INFO L118 FreeRefinementEngine]: Executing refinement strategy FOX [2025-01-09 13:18:26,658 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1638302168] [2025-01-09 13:18:26,658 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-01-09 13:18:26,658 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:18:26,658 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/mathsat [2025-01-09 13:18:26,663 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:18:26,667 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:18:26,718 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 82 statements into 1 equivalence classes. [2025-01-09 13:18:27,586 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 82 of 82 statements. [2025-01-09 13:18:27,586 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-09 13:18:27,586 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-09 13:18:27,625 INFO L256 TraceCheckSpWp]: Trace formula consists of 143 conjuncts, 5 conjuncts are in the unsatisfiable core [2025-01-09 13:18:27,629 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-01-09 13:18:28,989 INFO L134 CoverageAnalysis]: Checked inductivity of 264 backedges. 101 proven. 6 refuted. 0 times theorem prover too weak. 157 trivial. 0 not checked. [2025-01-09 13:18:28,989 INFO L312 TraceCheckSpWp]: Computing backward predicates... [2025-01-09 13:18:31,167 INFO L134 CoverageAnalysis]: Checked inductivity of 264 backedges. 27 proven. 6 refuted. 0 times theorem prover too weak. 231 trivial. 0 not checked. [2025-01-09 13:18:31,167 INFO L136 FreeRefinementEngine]: Strategy FOX found an infeasible trace [2025-01-09 13:18:31,167 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1638302168] [2025-01-09 13:18:31,167 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1638302168] provided 0 perfect and 2 imperfect interpolant sequences [2025-01-09 13:18:31,167 INFO L185 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2025-01-09 13:18:31,167 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [6, 6] total 8 [2025-01-09 13:18:31,168 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1229212997] [2025-01-09 13:18:31,168 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2025-01-09 13:18:31,169 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2025-01-09 13:18:31,169 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy FOX [2025-01-09 13:18:31,169 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2025-01-09 13:18:31,169 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=19, Invalid=37, Unknown=0, NotChecked=0, Total=56 [2025-01-09 13:18:31,170 INFO L87 Difference]: Start difference. First operand 42 states and 58 transitions. Second operand has 8 states, 8 states have (on average 4.25) internal successors, (34), 8 states have internal predecessors, (34), 2 states have call successors, (14), 2 states have call predecessors, (14), 4 states have return successors, (15), 2 states have call predecessors, (15), 2 states have call successors, (15) [2025-01-09 13:18:38,324 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 4.37s for a HTC check with result UNKNOWN. Formula has sorts [Bool, FloatingPoint, RoundingMode, Real, BitVec], hasArrays=false, hasNonlinArith=false, quantifiers [] [2025-01-09 13:18:42,327 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 4.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, FloatingPoint, RoundingMode, Real, BitVec], hasArrays=false, hasNonlinArith=false, quantifiers [] [2025-01-09 13:18:46,331 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 4.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, FloatingPoint, RoundingMode, Real, BitVec], hasArrays=false, hasNonlinArith=false, quantifiers [] [2025-01-09 13:18:46,334 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2025-01-09 13:18:46,334 INFO L93 Difference]: Finished difference Result 89 states and 120 transitions. [2025-01-09 13:18:46,507 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2025-01-09 13:18:46,507 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 4.25) internal successors, (34), 8 states have internal predecessors, (34), 2 states have call successors, (14), 2 states have call predecessors, (14), 4 states have return successors, (15), 2 states have call predecessors, (15), 2 states have call successors, (15) Word has length 82 [2025-01-09 13:18:46,507 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2025-01-09 13:18:46,508 INFO L225 Difference]: With dead ends: 89 [2025-01-09 13:18:46,508 INFO L226 Difference]: Without dead ends: 50 [2025-01-09 13:18:46,509 INFO L434 NwaCegarLoop]: 0 DeclaredPredicates, 170 GetRequests, 156 SyntacticMatches, 1 SemanticMatches, 13 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 14 ImplicationChecksByTransitivity, 2.2s TimeCoverageRelationStatistics Valid=77, Invalid=133, Unknown=0, NotChecked=0, Total=210 [2025-01-09 13:18:46,509 INFO L435 NwaCegarLoop]: 39 mSDtfsCounter, 109 mSDsluCounter, 51 mSDsCounter, 0 mSdLazyCounter, 81 mSolverCounterSat, 76 mSolverCounterUnsat, 3 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 14.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 111 SdHoareTripleChecker+Valid, 90 SdHoareTripleChecker+Invalid, 160 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 76 IncrementalHoareTripleChecker+Valid, 81 IncrementalHoareTripleChecker+Invalid, 3 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 14.0s IncrementalHoareTripleChecker+Time [2025-01-09 13:18:46,509 INFO L436 NwaCegarLoop]: SdHoareTripleChecker [111 Valid, 90 Invalid, 160 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [76 Valid, 81 Invalid, 3 Unknown, 0 Unchecked, 14.0s Time] [2025-01-09 13:18:46,510 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 50 states. [2025-01-09 13:18:46,517 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 50 to 46. [2025-01-09 13:18:46,517 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 46 states, 31 states have (on average 1.1290322580645162) internal successors, (35), 31 states have internal predecessors, (35), 12 states have call successors, (12), 2 states have call predecessors, (12), 2 states have return successors, (12), 12 states have call predecessors, (12), 12 states have call successors, (12) [2025-01-09 13:18:46,519 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 46 states to 46 states and 59 transitions. [2025-01-09 13:18:46,520 INFO L78 Accepts]: Start accepts. Automaton has 46 states and 59 transitions. Word has length 82 [2025-01-09 13:18:46,520 INFO L84 Accepts]: Finished accepts. word is rejected. [2025-01-09 13:18:46,520 INFO L471 AbstractCegarLoop]: Abstraction has 46 states and 59 transitions. [2025-01-09 13:18:46,520 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 4.25) internal successors, (34), 8 states have internal predecessors, (34), 2 states have call successors, (14), 2 states have call predecessors, (14), 4 states have return successors, (15), 2 states have call predecessors, (15), 2 states have call successors, (15) [2025-01-09 13:18:46,520 INFO L276 IsEmpty]: Start isEmpty. Operand 46 states and 59 transitions. [2025-01-09 13:18:46,521 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 83 [2025-01-09 13:18:46,521 INFO L210 NwaCegarLoop]: Found error trace [2025-01-09 13:18:46,521 INFO L218 NwaCegarLoop]: trace histogram [12, 12, 12, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 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:18:46,555 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 (3)] Forceful destruction successful, exit code 0 [2025-01-09 13:18:46,722 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 3 /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:18:46,723 INFO L396 AbstractCegarLoop]: === Iteration 3 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2025-01-09 13:18:46,723 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-09 13:18:46,723 INFO L85 PathProgramCache]: Analyzing trace with hash 517956032, now seen corresponding path program 1 times [2025-01-09 13:18:46,724 INFO L118 FreeRefinementEngine]: Executing refinement strategy FOX [2025-01-09 13:18:46,724 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [41355460] [2025-01-09 13:18:46,725 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-01-09 13:18:46,725 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:18:46,725 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/mathsat [2025-01-09 13:18:46,727 INFO L229 MonitoredProcess]: Starting monitored process 4 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:18:46,728 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 (4)] Waiting until timeout for monitored process [2025-01-09 13:18:46,767 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 82 statements into 1 equivalence classes. [2025-01-09 13:18:48,372 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 82 of 82 statements. [2025-01-09 13:18:48,373 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-09 13:18:48,373 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-09 13:18:48,411 INFO L256 TraceCheckSpWp]: Trace formula consists of 142 conjuncts, 19 conjuncts are in the unsatisfiable core [2025-01-09 13:18:48,415 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-01-09 13:19:04,924 WARN L286 SmtUtils]: Spent 8.30s on a formula simplification that was a NOOP. DAG size: 6 (called from [L 728] de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.simplify) [2025-01-09 13:19:13,208 WARN L286 SmtUtils]: Spent 8.28s on a formula simplification that was a NOOP. DAG size: 6 (called from [L 728] de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.simplify) [2025-01-09 13:19:21,491 WARN L286 SmtUtils]: Spent 8.28s on a formula simplification that was a NOOP. DAG size: 3 (called from [L 728] de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.simplify) [2025-01-09 13:19:29,760 WARN L286 SmtUtils]: Spent 8.27s on a formula simplification that was a NOOP. DAG size: 4 (called from [L 728] de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.simplify) [2025-01-09 13:19:37,935 WARN L286 SmtUtils]: Spent 8.17s on a formula simplification that was a NOOP. DAG size: 8 (called from [L 728] de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.simplify) [2025-01-09 13:19:46,461 WARN L286 SmtUtils]: Spent 8.53s on a formula simplification that was a NOOP. DAG size: 3 (called from [L 728] de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher.simplify) [2025-01-09 13:19:50,543 WARN L851 $PredicateComparison]: unable to prove that (and (bvsle ((_ zero_extend 24) c_~var_1_19~0) (_ bv0 32)) (fp.geq c_~var_1_12~0 ((_ to_fp 11 53) c_currentRoundingMode ((_ to_fp 8 24) c_currentRoundingMode (/ 1.0 100000000000000000000.0)))) (= c_~var_1_8~0 c_~var_1_12~0) (fp.eq (fp.neg (fp.div c_currentRoundingMode ((_ to_fp 11 53) c_currentRoundingMode c_~var_1_5~0) c_~var_1_9~0)) c_~last_1_var_1_8~0) (fp.leq c_~var_1_12~0 ((_ to_fp 11 53) c_currentRoundingMode ((_ to_fp 8 24) c_currentRoundingMode 9223372036854765600.0))) (= c_currentRoundingMode roundNearestTiesToEven)) is different from false