./Ultimate.py --spec ../sv-benchmarks/c/properties/unreach-call.prp --file ../sv-benchmarks/c/hardness-nfm22/hardness_variablewrapping_normal_file-78.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_variablewrapping_normal_file-78.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 710320fa6de161e4a282e22ef2d80d8d84540a08056bade2f948495e37c0bf61 --- Real Ultimate output --- This is Ultimate 0.3.0-?-551b009-m [2025-01-09 15:14:31,763 INFO L188 SettingsManager]: Resetting all preferences to default values... [2025-01-09 15:14:31,809 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Default.epf [2025-01-09 15:14:31,812 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2025-01-09 15:14:31,813 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2025-01-09 15:14:31,826 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2025-01-09 15:14:31,827 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2025-01-09 15:14:31,827 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2025-01-09 15:14:31,827 INFO L151 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2025-01-09 15:14:31,827 INFO L153 SettingsManager]: * Use memory slicer=true [2025-01-09 15:14:31,827 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2025-01-09 15:14:31,827 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2025-01-09 15:14:31,827 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2025-01-09 15:14:31,827 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2025-01-09 15:14:31,828 INFO L153 SettingsManager]: * Use SBE=true [2025-01-09 15:14:31,828 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2025-01-09 15:14:31,828 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2025-01-09 15:14:31,828 INFO L153 SettingsManager]: * sizeof long=4 [2025-01-09 15:14:31,828 INFO L153 SettingsManager]: * Overapproximate operations on floating types=true [2025-01-09 15:14:31,828 INFO L153 SettingsManager]: * sizeof POINTER=4 [2025-01-09 15:14:31,828 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2025-01-09 15:14:31,828 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2025-01-09 15:14:31,828 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2025-01-09 15:14:31,828 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2025-01-09 15:14:31,828 INFO L153 SettingsManager]: * sizeof long double=12 [2025-01-09 15:14:31,829 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2025-01-09 15:14:31,829 INFO L153 SettingsManager]: * Behaviour of calls to undefined functions=OVERAPPROXIMATE_BEHAVIOUR [2025-01-09 15:14:31,829 INFO L153 SettingsManager]: * Use constant arrays=true [2025-01-09 15:14:31,829 INFO L151 SettingsManager]: Preferences of IcfgBuilder differ from their defaults: [2025-01-09 15:14:31,829 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2025-01-09 15:14:31,829 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2025-01-09 15:14:31,829 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2025-01-09 15:14:31,829 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-01-09 15:14:31,829 INFO L151 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2025-01-09 15:14:31,829 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2025-01-09 15:14:31,829 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2025-01-09 15:14:31,829 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2025-01-09 15:14:31,830 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-01-09 15:14:31,830 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2025-01-09 15:14:31,830 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2025-01-09 15:14:31,830 INFO L153 SettingsManager]: * Compute procedure contracts=false [2025-01-09 15:14:31,830 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2025-01-09 15:14:31,830 INFO L153 SettingsManager]: * Trace refinement strategy=CAMEL [2025-01-09 15:14:31,830 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2025-01-09 15:14:31,830 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2025-01-09 15:14:31,830 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2025-01-09 15:14:31,830 INFO L153 SettingsManager]: * Order on configurations for Petri net unfoldings=DBO [2025-01-09 15:14:31,830 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2025-01-09 15:14:31,830 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 -> 710320fa6de161e4a282e22ef2d80d8d84540a08056bade2f948495e37c0bf61 [2025-01-09 15:14:32,055 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2025-01-09 15:14:32,060 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2025-01-09 15:14:32,061 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2025-01-09 15:14:32,062 INFO L270 PluginConnector]: Initializing CDTParser... [2025-01-09 15:14:32,062 INFO L274 PluginConnector]: CDTParser initialized [2025-01-09 15:14:32,064 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/hardness-nfm22/hardness_variablewrapping_normal_file-78.i [2025-01-09 15:14:33,248 INFO L533 CDTParser]: Created temporary CDT project at /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/e162469b2/6a89bfb7c2c54a9192be10b19e607078/FLAGca2ae50c6 [2025-01-09 15:14:33,499 INFO L384 CDTParser]: Found 1 translation units. [2025-01-09 15:14:33,500 INFO L180 CDTParser]: Scanning /storage/repos/ultimate-jdk21/releaseScripts/default/sv-benchmarks/c/hardness-nfm22/hardness_variablewrapping_normal_file-78.i [2025-01-09 15:14:33,507 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/e162469b2/6a89bfb7c2c54a9192be10b19e607078/FLAGca2ae50c6 [2025-01-09 15:14:33,832 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/e162469b2/6a89bfb7c2c54a9192be10b19e607078 [2025-01-09 15:14:33,835 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2025-01-09 15:14:33,836 INFO L133 ToolchainWalker]: Walking toolchain with 6 elements. [2025-01-09 15:14:33,841 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2025-01-09 15:14:33,841 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2025-01-09 15:14:33,844 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2025-01-09 15:14:33,846 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 09.01 03:14:33" (1/1) ... [2025-01-09 15:14:33,847 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@72645251 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 03:14:33, skipping insertion in model container [2025-01-09 15:14:33,847 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 09.01 03:14:33" (1/1) ... [2025-01-09 15:14:33,871 INFO L175 MainTranslator]: Built tables and reachable declarations [2025-01-09 15:14:34,009 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_variablewrapping_normal_file-78.i[913,926] [2025-01-09 15:14:34,046 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-01-09 15:14:34,052 INFO L200 MainTranslator]: Completed pre-run [2025-01-09 15:14:34,059 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_variablewrapping_normal_file-78.i[913,926] [2025-01-09 15:14:34,071 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-01-09 15:14:34,083 INFO L204 MainTranslator]: Completed translation [2025-01-09 15:14:34,084 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 03:14:34 WrapperNode [2025-01-09 15:14:34,087 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2025-01-09 15:14:34,088 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2025-01-09 15:14:34,088 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2025-01-09 15:14:34,088 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2025-01-09 15:14:34,096 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 03:14:34" (1/1) ... [2025-01-09 15:14:34,104 INFO L184 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 03:14:34" (1/1) ... [2025-01-09 15:14:34,116 INFO L138 Inliner]: procedures = 26, calls = 23, calls flagged for inlining = 8, calls inlined = 8, statements flattened = 90 [2025-01-09 15:14:34,117 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2025-01-09 15:14:34,117 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2025-01-09 15:14:34,117 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2025-01-09 15:14:34,117 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2025-01-09 15:14:34,123 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 03:14:34" (1/1) ... [2025-01-09 15:14:34,123 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 03:14:34" (1/1) ... [2025-01-09 15:14:34,125 INFO L184 PluginConnector]: Executing the observer MemorySlicer from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 03:14:34" (1/1) ... [2025-01-09 15:14:34,132 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 15:14:34,132 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 03:14:34" (1/1) ... [2025-01-09 15:14:34,132 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 03:14:34" (1/1) ... [2025-01-09 15:14:34,135 INFO L184 PluginConnector]: Executing the observer ReplaceArrayAssignments from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 03:14:34" (1/1) ... [2025-01-09 15:14:34,136 INFO L184 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 03:14:34" (1/1) ... [2025-01-09 15:14:34,137 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 03:14:34" (1/1) ... [2025-01-09 15:14:34,138 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 03:14:34" (1/1) ... [2025-01-09 15:14:34,138 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 03:14:34" (1/1) ... [2025-01-09 15:14:34,139 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2025-01-09 15:14:34,140 INFO L112 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2025-01-09 15:14:34,140 INFO L270 PluginConnector]: Initializing RCFGBuilder... [2025-01-09 15:14:34,140 INFO L274 PluginConnector]: RCFGBuilder initialized [2025-01-09 15:14:34,141 INFO L184 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 03:14:34" (1/1) ... [2025-01-09 15:14:34,145 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-01-09 15:14:34,157 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-09 15:14:34,167 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 15:14:34,171 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 15:14:34,185 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2025-01-09 15:14:34,185 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2025-01-09 15:14:34,185 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2025-01-09 15:14:34,185 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#0 [2025-01-09 15:14:34,185 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2025-01-09 15:14:34,185 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2025-01-09 15:14:34,237 INFO L234 CfgBuilder]: Building ICFG [2025-01-09 15:14:34,238 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2025-01-09 15:14:34,385 INFO L? ?]: Removed 14 outVars from TransFormulas that were not future-live. [2025-01-09 15:14:34,385 INFO L283 CfgBuilder]: Performing block encoding [2025-01-09 15:14:34,391 INFO L307 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2025-01-09 15:14:34,391 INFO L312 CfgBuilder]: Removed 1 assume(true) statements. [2025-01-09 15:14:34,391 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 09.01 03:14:34 BoogieIcfgContainer [2025-01-09 15:14:34,391 INFO L131 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2025-01-09 15:14:34,393 INFO L112 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2025-01-09 15:14:34,393 INFO L270 PluginConnector]: Initializing TraceAbstraction... [2025-01-09 15:14:34,396 INFO L274 PluginConnector]: TraceAbstraction initialized [2025-01-09 15:14:34,396 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 09.01 03:14:33" (1/3) ... [2025-01-09 15:14:34,397 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@5ab40ff3 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 09.01 03:14:34, skipping insertion in model container [2025-01-09 15:14:34,397 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 03:14:34" (2/3) ... [2025-01-09 15:14:34,397 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@5ab40ff3 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 09.01 03:14:34, skipping insertion in model container [2025-01-09 15:14:34,397 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 09.01 03:14:34" (3/3) ... [2025-01-09 15:14:34,398 INFO L128 eAbstractionObserver]: Analyzing ICFG hardness_variablewrapping_normal_file-78.i [2025-01-09 15:14:34,407 INFO L216 ceAbstractionStarter]: Automizer settings: Hoare:LoopHeads NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2025-01-09 15:14:34,408 INFO L151 ceAbstractionStarter]: Applying trace abstraction to ICFG hardness_variablewrapping_normal_file-78.i that has 2 procedures, 43 locations, 1 initial locations, 1 loop locations, and 1 error locations. [2025-01-09 15:14:34,448 INFO L332 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2025-01-09 15:14:34,457 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;@5647d0a7, mLbeIndependenceSettings=[IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=false, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2025-01-09 15:14:34,458 INFO L334 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2025-01-09 15:14:34,460 INFO L276 IsEmpty]: Start isEmpty. Operand has 43 states, 30 states have (on average 1.3333333333333333) internal successors, (40), 31 states have internal predecessors, (40), 10 states have call successors, (10), 1 states have call predecessors, (10), 1 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2025-01-09 15:14:34,466 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 73 [2025-01-09 15:14:34,467 INFO L210 NwaCegarLoop]: Found error trace [2025-01-09 15:14:34,467 INFO L218 NwaCegarLoop]: trace histogram [10, 10, 10, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 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 15:14:34,468 INFO L396 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2025-01-09 15:14:34,471 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-09 15:14:34,472 INFO L85 PathProgramCache]: Analyzing trace with hash -1353840755, now seen corresponding path program 1 times [2025-01-09 15:14:34,478 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-01-09 15:14:34,478 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1088069718] [2025-01-09 15:14:34,479 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-01-09 15:14:34,479 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-01-09 15:14:34,547 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 72 statements into 1 equivalence classes. [2025-01-09 15:14:34,558 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 72 of 72 statements. [2025-01-09 15:14:34,559 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-09 15:14:34,559 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-09 15:14:34,657 INFO L134 CoverageAnalysis]: Checked inductivity of 180 backedges. 0 proven. 18 refuted. 0 times theorem prover too weak. 162 trivial. 0 not checked. [2025-01-09 15:14:34,658 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-01-09 15:14:34,658 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1088069718] [2025-01-09 15:14:34,658 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [1088069718] provided 0 perfect and 1 imperfect interpolant sequences [2025-01-09 15:14:34,659 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [901843864] [2025-01-09 15:14:34,659 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-01-09 15:14:34,659 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2025-01-09 15:14:34,659 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-09 15:14:34,668 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 15:14:34,669 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 15:14:34,733 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 72 statements into 1 equivalence classes. [2025-01-09 15:14:34,779 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 72 of 72 statements. [2025-01-09 15:14:34,780 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-09 15:14:34,780 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-09 15:14:34,783 INFO L256 TraceCheckSpWp]: Trace formula consists of 170 conjuncts, 1 conjuncts are in the unsatisfiable core [2025-01-09 15:14:34,789 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-01-09 15:14:34,803 INFO L134 CoverageAnalysis]: Checked inductivity of 180 backedges. 18 proven. 0 refuted. 0 times theorem prover too weak. 162 trivial. 0 not checked. [2025-01-09 15:14:34,804 INFO L308 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2025-01-09 15:14:34,804 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [901843864] provided 1 perfect and 0 imperfect interpolant sequences [2025-01-09 15:14:34,804 INFO L185 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2025-01-09 15:14:34,805 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [2] total 2 [2025-01-09 15:14:34,806 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1471666018] [2025-01-09 15:14:34,806 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-01-09 15:14:34,809 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 2 states [2025-01-09 15:14:34,809 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-01-09 15:14:34,821 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2025-01-09 15:14:34,822 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2025-01-09 15:14:34,823 INFO L87 Difference]: Start difference. First operand has 43 states, 30 states have (on average 1.3333333333333333) internal successors, (40), 31 states have internal predecessors, (40), 10 states have call successors, (10), 1 states have call predecessors, (10), 1 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) 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, (10), 2 states have call predecessors, (10), 1 states have return successors, (10), 1 states have call predecessors, (10), 2 states have call successors, (10) [2025-01-09 15:14:34,837 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2025-01-09 15:14:34,839 INFO L93 Difference]: Finished difference Result 80 states and 125 transitions. [2025-01-09 15:14:34,840 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2025-01-09 15:14:34,840 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, (10), 2 states have call predecessors, (10), 1 states have return successors, (10), 1 states have call predecessors, (10), 2 states have call successors, (10) Word has length 72 [2025-01-09 15:14:34,841 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2025-01-09 15:14:34,844 INFO L225 Difference]: With dead ends: 80 [2025-01-09 15:14:34,844 INFO L226 Difference]: Without dead ends: 40 [2025-01-09 15:14:34,847 INFO L434 NwaCegarLoop]: 0 DeclaredPredicates, 73 GetRequests, 73 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 15:14:34,849 INFO L435 NwaCegarLoop]: 55 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, 55 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 15:14:34,851 INFO L436 NwaCegarLoop]: SdHoareTripleChecker [0 Valid, 55 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 0 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2025-01-09 15:14:34,859 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 40 states. [2025-01-09 15:14:34,873 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 40 to 40. [2025-01-09 15:14:34,874 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 40 states, 28 states have (on average 1.25) internal successors, (35), 28 states have internal predecessors, (35), 10 states have call successors, (10), 1 states have call predecessors, (10), 1 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2025-01-09 15:14:34,878 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 40 states to 40 states and 55 transitions. [2025-01-09 15:14:34,880 INFO L78 Accepts]: Start accepts. Automaton has 40 states and 55 transitions. Word has length 72 [2025-01-09 15:14:34,881 INFO L84 Accepts]: Finished accepts. word is rejected. [2025-01-09 15:14:34,881 INFO L471 AbstractCegarLoop]: Abstraction has 40 states and 55 transitions. [2025-01-09 15:14:34,881 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, (10), 2 states have call predecessors, (10), 1 states have return successors, (10), 1 states have call predecessors, (10), 2 states have call successors, (10) [2025-01-09 15:14:34,881 INFO L276 IsEmpty]: Start isEmpty. Operand 40 states and 55 transitions. [2025-01-09 15:14:34,883 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 73 [2025-01-09 15:14:34,883 INFO L210 NwaCegarLoop]: Found error trace [2025-01-09 15:14:34,883 INFO L218 NwaCegarLoop]: trace histogram [10, 10, 10, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 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 15:14:34,890 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 15:14:35,084 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 15:14:35,084 INFO L396 AbstractCegarLoop]: === Iteration 2 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2025-01-09 15:14:35,084 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-09 15:14:35,085 INFO L85 PathProgramCache]: Analyzing trace with hash 221496661, now seen corresponding path program 1 times [2025-01-09 15:14:35,085 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-01-09 15:14:35,085 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [541847067] [2025-01-09 15:14:35,085 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-01-09 15:14:35,085 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-01-09 15:14:35,102 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 72 statements into 1 equivalence classes. [2025-01-09 15:14:35,155 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 72 of 72 statements. [2025-01-09 15:14:35,155 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-09 15:14:35,155 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-01-09 15:14:35,155 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-01-09 15:14:35,160 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 72 statements into 1 equivalence classes. [2025-01-09 15:14:35,205 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 72 of 72 statements. [2025-01-09 15:14:35,207 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-09 15:14:35,207 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-01-09 15:14:35,229 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-01-09 15:14:35,229 INFO L340 BasicCegarLoop]: Counterexample is feasible [2025-01-09 15:14:35,230 INFO L782 garLoopResultBuilder]: Registering result UNSAFE for location ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION (0 of 1 remaining) [2025-01-09 15:14:35,231 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2025-01-09 15:14:35,233 INFO L422 BasicCegarLoop]: Path program histogram: [1, 1] [2025-01-09 15:14:35,281 INFO L170 ceAbstractionStarter]: Computing trace abstraction results [2025-01-09 15:14:35,284 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 09.01 03:14:35 BoogieIcfgContainer [2025-01-09 15:14:35,284 INFO L131 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2025-01-09 15:14:35,288 INFO L112 PluginConnector]: ------------------------Witness Printer---------------------------- [2025-01-09 15:14:35,288 INFO L270 PluginConnector]: Initializing Witness Printer... [2025-01-09 15:14:35,288 INFO L274 PluginConnector]: Witness Printer initialized [2025-01-09 15:14:35,288 INFO L184 PluginConnector]: Executing the observer RCFGCatcher from plugin Witness Printer for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 09.01 03:14:34" (3/4) ... [2025-01-09 15:14:35,290 INFO L149 WitnessPrinter]: No result that supports witness generation found [2025-01-09 15:14:35,291 INFO L131 PluginConnector]: ------------------------ END Witness Printer---------------------------- [2025-01-09 15:14:35,291 INFO L158 Benchmark]: Toolchain (without parser) took 1455.23ms. Allocated memory is still 201.3MB. Free memory was 157.9MB in the beginning and 82.0MB in the end (delta: 76.0MB). Peak memory consumption was 67.1MB. Max. memory is 16.1GB. [2025-01-09 15:14:35,292 INFO L158 Benchmark]: CDTParser took 0.28ms. Allocated memory is still 209.7MB. Free memory is still 125.5MB. There was no memory consumed. Max. memory is 16.1GB. [2025-01-09 15:14:35,292 INFO L158 Benchmark]: CACSL2BoogieTranslator took 246.93ms. Allocated memory is still 201.3MB. Free memory was 157.9MB in the beginning and 145.3MB in the end (delta: 12.6MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. [2025-01-09 15:14:35,293 INFO L158 Benchmark]: Boogie Procedure Inliner took 28.68ms. Allocated memory is still 201.3MB. Free memory was 145.3MB in the beginning and 143.8MB in the end (delta: 1.5MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. [2025-01-09 15:14:35,293 INFO L158 Benchmark]: Boogie Preprocessor took 22.20ms. Allocated memory is still 201.3MB. Free memory was 143.5MB in the beginning and 141.5MB in the end (delta: 2.0MB). There was no memory consumed. Max. memory is 16.1GB. [2025-01-09 15:14:35,293 INFO L158 Benchmark]: RCFGBuilder took 251.61ms. Allocated memory is still 201.3MB. Free memory was 141.5MB in the beginning and 127.6MB in the end (delta: 13.9MB). There was no memory consumed. Max. memory is 16.1GB. [2025-01-09 15:14:35,294 INFO L158 Benchmark]: TraceAbstraction took 890.73ms. Allocated memory is still 201.3MB. Free memory was 127.0MB in the beginning and 82.2MB in the end (delta: 44.8MB). Peak memory consumption was 41.9MB. Max. memory is 16.1GB. [2025-01-09 15:14:35,295 INFO L158 Benchmark]: Witness Printer took 3.22ms. Allocated memory is still 201.3MB. Free memory was 82.2MB in the beginning and 82.0MB in the end (delta: 278.3kB). There was no memory consumed. Max. memory is 16.1GB. [2025-01-09 15:14:35,296 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.28ms. Allocated memory is still 209.7MB. Free memory is still 125.5MB. There was no memory consumed. Max. memory is 16.1GB. * CACSL2BoogieTranslator took 246.93ms. Allocated memory is still 201.3MB. Free memory was 157.9MB in the beginning and 145.3MB in the end (delta: 12.6MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. * Boogie Procedure Inliner took 28.68ms. Allocated memory is still 201.3MB. Free memory was 145.3MB in the beginning and 143.8MB in the end (delta: 1.5MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. * Boogie Preprocessor took 22.20ms. Allocated memory is still 201.3MB. Free memory was 143.5MB in the beginning and 141.5MB in the end (delta: 2.0MB). There was no memory consumed. Max. memory is 16.1GB. * RCFGBuilder took 251.61ms. Allocated memory is still 201.3MB. Free memory was 141.5MB in the beginning and 127.6MB in the end (delta: 13.9MB). There was no memory consumed. Max. memory is 16.1GB. * TraceAbstraction took 890.73ms. Allocated memory is still 201.3MB. Free memory was 127.0MB in the beginning and 82.2MB in the end (delta: 44.8MB). Peak memory consumption was 41.9MB. Max. memory is 16.1GB. * Witness Printer took 3.22ms. Allocated memory is still 201.3MB. Free memory was 82.2MB in the beginning and 82.0MB in the end (delta: 278.3kB). 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 someBinaryArithmeticDOUBLEoperation at line 61, overapproximation of someBinaryFLOATComparisonOperation at line 86, overapproximation of someBinaryFLOATComparisonOperation at line 72, overapproximation of someBinaryFLOATComparisonOperation at line 36, overapproximation of someBinaryFLOATComparisonOperation at line 74, overapproximation of someBinaryDOUBLEComparisonOperation at line 78, overapproximation of someBinaryDOUBLEComparisonOperation at line 86, overapproximation of someBinaryDOUBLEComparisonOperation at line 76, overapproximation of someBinaryArithmeticFLOAToperation at line 49. Possible FailurePath: [L21] unsigned char isInitial = 0; [L22] signed long int var_1_1 = -200; [L23] unsigned char var_1_2 = 0; [L24] unsigned char var_1_3 = 1; [L25] float var_1_9 = 100.55; [L26] float var_1_10 = 4.75; [L27] float var_1_11 = 128.75; [L28] double var_1_12 = 128.5; [L29] double var_1_13 = 0.0; [L30] double var_1_14 = 127.875; [L31] unsigned char var_1_15 = 1; [L32] unsigned char var_1_16 = 16; VAL [isInitial=0, var_1_10=19/4, var_1_11=515/4, var_1_12=257/2, var_1_13=0, var_1_14=1023/8, var_1_15=1, var_1_16=16, var_1_1=-200, var_1_2=0, var_1_3=1, var_1_9=2011/20] [L90] isInitial = 1 [L91] FCALL initially() [L93] FCALL updateLastVariables() [L94] CALL updateVariables() [L65] var_1_2 = __VERIFIER_nondet_uchar() [L66] CALL assume_abort_if_not(var_1_2 >= 0) VAL [\old(cond)=1, isInitial=1, var_1_10=19/4, var_1_11=515/4, var_1_12=257/2, var_1_13=0, var_1_14=1023/8, var_1_15=1, var_1_16=16, var_1_1=-200, var_1_3=1, var_1_9=2011/20] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_10=19/4, var_1_11=515/4, var_1_12=257/2, var_1_13=0, var_1_14=1023/8, var_1_15=1, var_1_16=16, var_1_1=-200, var_1_3=1, var_1_9=2011/20] [L66] RET assume_abort_if_not(var_1_2 >= 0) VAL [isInitial=1, var_1_10=19/4, var_1_11=515/4, var_1_12=257/2, var_1_13=0, var_1_14=1023/8, var_1_15=1, var_1_16=16, var_1_1=-200, var_1_3=1, var_1_9=2011/20] [L67] CALL assume_abort_if_not(var_1_2 <= 1) VAL [\old(cond)=1, isInitial=1, var_1_10=19/4, var_1_11=515/4, var_1_12=257/2, var_1_13=0, var_1_14=1023/8, var_1_15=1, var_1_16=16, var_1_1=-200, var_1_2=1, var_1_3=1, var_1_9=2011/20] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_10=19/4, var_1_11=515/4, var_1_12=257/2, var_1_13=0, var_1_14=1023/8, var_1_15=1, var_1_16=16, var_1_1=-200, var_1_2=1, var_1_3=1, var_1_9=2011/20] [L67] RET assume_abort_if_not(var_1_2 <= 1) VAL [isInitial=1, var_1_10=19/4, var_1_11=515/4, var_1_12=257/2, var_1_13=0, var_1_14=1023/8, var_1_15=1, var_1_16=16, var_1_1=-200, var_1_2=1, var_1_3=1, var_1_9=2011/20] [L68] var_1_3 = __VERIFIER_nondet_uchar() [L69] CALL assume_abort_if_not(var_1_3 >= 0) VAL [\old(cond)=1, isInitial=1, var_1_10=19/4, var_1_11=515/4, var_1_12=257/2, var_1_13=0, var_1_14=1023/8, var_1_15=1, var_1_16=16, var_1_1=-200, var_1_2=1, var_1_9=2011/20] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_10=19/4, var_1_11=515/4, var_1_12=257/2, var_1_13=0, var_1_14=1023/8, var_1_15=1, var_1_16=16, var_1_1=-200, var_1_2=1, var_1_9=2011/20] [L69] RET assume_abort_if_not(var_1_3 >= 0) VAL [isInitial=1, var_1_10=19/4, var_1_11=515/4, var_1_12=257/2, var_1_13=0, var_1_14=1023/8, var_1_15=1, var_1_16=16, var_1_1=-200, var_1_2=1, var_1_9=2011/20] [L70] CALL assume_abort_if_not(var_1_3 <= 1) VAL [\old(cond)=1, isInitial=1, var_1_10=19/4, var_1_11=515/4, var_1_12=257/2, var_1_13=0, var_1_14=1023/8, var_1_15=1, var_1_16=16, var_1_1=-200, var_1_2=1, var_1_3=-256, var_1_9=2011/20] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_10=19/4, var_1_11=515/4, var_1_12=257/2, var_1_13=0, var_1_14=1023/8, var_1_15=1, var_1_16=16, var_1_1=-200, var_1_2=1, var_1_3=-256, var_1_9=2011/20] [L70] RET assume_abort_if_not(var_1_3 <= 1) VAL [isInitial=1, var_1_10=19/4, var_1_11=515/4, var_1_12=257/2, var_1_13=0, var_1_14=1023/8, var_1_15=1, var_1_16=16, var_1_1=-200, var_1_2=1, var_1_3=-256, var_1_9=2011/20] [L71] var_1_10 = __VERIFIER_nondet_float() [L72] CALL assume_abort_if_not((var_1_10 >= 0.0F && var_1_10 <= -1.0e-20F) || (var_1_10 <= 9223372.036854765600e+12F && var_1_10 >= 1.0e-20F )) VAL [\old(cond)=1, isInitial=1, var_1_11=515/4, var_1_12=257/2, var_1_13=0, var_1_14=1023/8, var_1_15=1, var_1_16=16, var_1_1=-200, var_1_2=1, var_1_3=-256, var_1_9=2011/20] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_11=515/4, var_1_12=257/2, var_1_13=0, var_1_14=1023/8, var_1_15=1, var_1_16=16, var_1_1=-200, var_1_2=1, var_1_3=-256, var_1_9=2011/20] [L72] RET assume_abort_if_not((var_1_10 >= 0.0F && var_1_10 <= -1.0e-20F) || (var_1_10 <= 9223372.036854765600e+12F && var_1_10 >= 1.0e-20F )) VAL [isInitial=1, var_1_11=515/4, var_1_12=257/2, var_1_13=0, var_1_14=1023/8, var_1_15=1, var_1_16=16, var_1_1=-200, var_1_2=1, var_1_3=-256, var_1_9=2011/20] [L73] var_1_11 = __VERIFIER_nondet_float() [L74] CALL assume_abort_if_not((var_1_11 >= 0.0F && var_1_11 <= -1.0e-20F) || (var_1_11 <= 9223372.036854765600e+12F && var_1_11 >= 1.0e-20F )) VAL [\old(cond)=1, isInitial=1, var_1_12=257/2, var_1_13=0, var_1_14=1023/8, var_1_15=1, var_1_16=16, var_1_1=-200, var_1_2=1, var_1_3=-256, var_1_9=2011/20] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_12=257/2, var_1_13=0, var_1_14=1023/8, var_1_15=1, var_1_16=16, var_1_1=-200, var_1_2=1, var_1_3=-256, var_1_9=2011/20] [L74] RET assume_abort_if_not((var_1_11 >= 0.0F && var_1_11 <= -1.0e-20F) || (var_1_11 <= 9223372.036854765600e+12F && var_1_11 >= 1.0e-20F )) VAL [isInitial=1, var_1_12=257/2, var_1_13=0, var_1_14=1023/8, var_1_15=1, var_1_16=16, var_1_1=-200, var_1_2=1, var_1_3=-256, var_1_9=2011/20] [L75] var_1_13 = __VERIFIER_nondet_double() [L76] CALL assume_abort_if_not((var_1_13 >= 4611686.018427382800e+12F && var_1_13 <= -1.0e-20F) || (var_1_13 <= 9223372.036854765600e+12F && var_1_13 >= 1.0e-20F )) VAL [\old(cond)=1, isInitial=1, var_1_12=257/2, var_1_14=1023/8, var_1_15=1, var_1_16=16, var_1_1=-200, var_1_2=1, var_1_3=-256, var_1_9=2011/20] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_12=257/2, var_1_14=1023/8, var_1_15=1, var_1_16=16, var_1_1=-200, var_1_2=1, var_1_3=-256, var_1_9=2011/20] [L76] RET assume_abort_if_not((var_1_13 >= 4611686.018427382800e+12F && var_1_13 <= -1.0e-20F) || (var_1_13 <= 9223372.036854765600e+12F && var_1_13 >= 1.0e-20F )) VAL [isInitial=1, var_1_12=257/2, var_1_14=1023/8, var_1_15=1, var_1_16=16, var_1_1=-200, var_1_2=1, var_1_3=-256, var_1_9=2011/20] [L77] var_1_14 = __VERIFIER_nondet_double() [L78] CALL assume_abort_if_not((var_1_14 >= 0.0F && var_1_14 <= -1.0e-20F) || (var_1_14 <= 4611686.018427382800e+12F && var_1_14 >= 1.0e-20F )) VAL [\old(cond)=1, isInitial=1, var_1_12=257/2, var_1_15=1, var_1_16=16, var_1_1=-200, var_1_2=1, var_1_3=-256, var_1_9=2011/20] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_12=257/2, var_1_15=1, var_1_16=16, var_1_1=-200, var_1_2=1, var_1_3=-256, var_1_9=2011/20] [L78] RET assume_abort_if_not((var_1_14 >= 0.0F && var_1_14 <= -1.0e-20F) || (var_1_14 <= 4611686.018427382800e+12F && var_1_14 >= 1.0e-20F )) VAL [isInitial=1, var_1_12=257/2, var_1_15=1, var_1_16=16, var_1_1=-200, var_1_2=1, var_1_3=-256, var_1_9=2011/20] [L79] var_1_16 = __VERIFIER_nondet_uchar() [L80] CALL assume_abort_if_not(var_1_16 >= 0) VAL [\old(cond)=1, isInitial=1, var_1_12=257/2, var_1_15=1, var_1_1=-200, var_1_2=1, var_1_3=-256, var_1_9=2011/20] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_12=257/2, var_1_15=1, var_1_1=-200, var_1_2=1, var_1_3=-256, var_1_9=2011/20] [L80] RET assume_abort_if_not(var_1_16 >= 0) VAL [isInitial=1, var_1_12=257/2, var_1_15=1, var_1_1=-200, var_1_2=1, var_1_3=-256, var_1_9=2011/20] [L81] CALL assume_abort_if_not(var_1_16 <= 254) VAL [\old(cond)=1, isInitial=1, var_1_12=257/2, var_1_15=1, var_1_16=254, var_1_1=-200, var_1_2=1, var_1_3=-256, var_1_9=2011/20] [L20] COND FALSE !(!cond) VAL [\old(cond)=1, isInitial=1, var_1_12=257/2, var_1_15=1, var_1_16=254, var_1_1=-200, var_1_2=1, var_1_3=-256, var_1_9=2011/20] [L81] RET assume_abort_if_not(var_1_16 <= 254) VAL [isInitial=1, var_1_12=257/2, var_1_15=1, var_1_16=254, var_1_1=-200, var_1_2=1, var_1_3=-256, var_1_9=2011/20] [L94] RET updateVariables() [L95] CALL step() [L36] COND FALSE !(0.8f > (- var_1_10)) VAL [isInitial=1, var_1_12=257/2, var_1_15=1, var_1_16=254, var_1_1=-200, var_1_2=1, var_1_3=-256, var_1_9=2011/20] [L39] unsigned char stepLocal_1 = var_1_15 > var_1_15; [L40] unsigned char stepLocal_0 = var_1_3; VAL [isInitial=1, stepLocal_0=-256, stepLocal_1=0, var_1_12=257/2, var_1_15=1, var_1_16=254, var_1_1=-200, var_1_2=1, var_1_3=-256, var_1_9=2011/20] [L41] COND FALSE !(var_1_2 && stepLocal_0) VAL [isInitial=1, stepLocal_1=0, var_1_12=257/2, var_1_15=1, var_1_16=254, var_1_1=-200, var_1_2=1, var_1_3=-256, var_1_9=2011/20] [L48] COND TRUE \read(var_1_2) [L49] var_1_9 = (var_1_10 - var_1_11) VAL [isInitial=1, stepLocal_1=0, var_1_12=257/2, var_1_15=1, var_1_16=254, var_1_1=-200, var_1_2=1, var_1_3=-256] [L57] signed long int stepLocal_2 = var_1_1; VAL [isInitial=1, stepLocal_1=0, stepLocal_2=-200, var_1_12=257/2, var_1_15=1, var_1_16=254, var_1_1=-200, var_1_2=1, var_1_3=-256] [L58] COND FALSE !(stepLocal_2 <= ((((8u) < 0 ) ? -(8u) : (8u)))) [L61] var_1_12 = ((var_1_13 - var_1_14) - var_1_11) VAL [isInitial=1, stepLocal_1=0, var_1_15=1, var_1_16=254, var_1_1=-200, var_1_2=1, var_1_3=-256] [L95] RET step() [L96] CALL, EXPR property() [L86-L87] return ((((var_1_2 && var_1_3) ? ((var_1_2 && (var_1_15 > var_1_15)) ? (var_1_1 == ((signed long int) (var_1_15 - var_1_15))) : (var_1_1 == ((signed long int) ((var_1_15 + 5) - var_1_15)))) : 1) && (var_1_2 ? (var_1_9 == ((float) (var_1_10 - var_1_11))) : ((var_1_1 < var_1_15) ? (var_1_9 == ((float) ((((var_1_11) > (var_1_10)) ? (var_1_11) : (var_1_10))))) : (var_1_9 == ((float) var_1_10))))) && ((var_1_1 <= ((((8u) < 0 ) ? -(8u) : (8u)))) ? (var_1_12 == ((double) (var_1_10 - 99.5))) : (var_1_12 == ((double) ((var_1_13 - var_1_14) - var_1_11))))) && ((0.8f > (- var_1_10)) ? (var_1_15 == ((unsigned char) var_1_16)) : 1) ; VAL [\result=0, isInitial=1, var_1_15=1, var_1_16=254, var_1_1=-200, var_1_2=1, var_1_3=-256] [L96] RET, EXPR property() [L96] CALL __VERIFIER_assert(property()) [L19] COND TRUE !(cond) VAL [isInitial=1, var_1_15=1, var_1_16=254, var_1_1=-200, var_1_2=1, var_1_3=-256] [L19] reach_error() VAL [isInitial=1, var_1_15=1, var_1_16=254, var_1_1=-200, var_1_2=1, var_1_3=-256] - StatisticsResult: Ultimate Automizer benchmark data CFG has 2 procedures, 43 locations, 1 error locations. Started 1 CEGAR loops. OverallTime: 0.8s, OverallIterations: 2, TraceHistogramMax: 10, PathProgramHistogramMax: 1, EmptinessCheckTime: 0.0s, AutomataDifference: 0.0s, DeadEndRemovalTime: 0.0s, HoareAnnotationTime: 0.0s, InitialAbstractionConstructionTime: 0.0s, HoareTripleCheckerStatistics: 0 mSolverCounterUnknown, 0 SdHoareTripleChecker+Valid, 0.0s IncrementalHoareTripleChecker+Time, 0 mSdLazyCounter, 0 mSDsluCounter, 55 SdHoareTripleChecker+Invalid, 0.0s Time, 0 mProtectedAction, 0 SdHoareTripleChecker+Unchecked, 0 IncrementalHoareTripleChecker+Unchecked, 0 mSDsCounter, 0 IncrementalHoareTripleChecker+Valid, 0 mProtectedPredicate, 0 IncrementalHoareTripleChecker+Invalid, 0 SdHoareTripleChecker+Unknown, 0 mSolverCounterNotChecked, 0 mSolverCounterUnsat, 55 mSDtfsCounter, 0 mSolverCounterSat, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Unknown, PredicateUnifierStatistics: 0 DeclaredPredicates, 73 GetRequests, 73 SyntacticMatches, 0 SemanticMatches, 0 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=43occurred in iteration=0, InterpolantAutomatonStates: 2, traceCheckStatistics: No data available, InterpolantConsolidationStatistics: No data available, PathInvariantsStatistics: No data available, 0/0 InterpolantCoveringCapability, TotalInterpolationStatistics: No data available, 0.0s DumpTime, AutomataMinimizationStatistics: 0.0s AutomataMinimizationTime, 1 MinimizatonAttempts, 0 StatesRemovedByMinimization, 0 NontrivialMinimizations, HoareAnnotationStatistics: No data available, RefinementEngineStatistics: TRACE_CHECK: 0.0s SsaConstructionTime, 0.1s SatisfiabilityAnalysisTime, 0.1s InterpolantComputationTime, 216 NumberOfCodeBlocks, 216 NumberOfCodeBlocksAsserted, 3 NumberOfCheckSat, 142 ConstructedInterpolants, 0 QuantifiedInterpolants, 142 SizeOfPredicates, 0 NumberOfNonLiveVariables, 170 ConjunctsInSsa, 1 ConjunctsInUnsatCore, 2 InterpolantComputations, 1 PerfectInterpolantSequences, 342/360 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 15:14:35,311 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 (1)] Forceful destruction successful, 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_variablewrapping_normal_file-78.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 710320fa6de161e4a282e22ef2d80d8d84540a08056bade2f948495e37c0bf61 --- Real Ultimate output --- This is Ultimate 0.3.0-?-551b009-m [2025-01-09 15:14:37,196 INFO L188 SettingsManager]: Resetting all preferences to default values... [2025-01-09 15:14:37,273 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Bitvector.epf [2025-01-09 15:14:37,281 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2025-01-09 15:14:37,281 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2025-01-09 15:14:37,305 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2025-01-09 15:14:37,305 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2025-01-09 15:14:37,305 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2025-01-09 15:14:37,305 INFO L151 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2025-01-09 15:14:37,305 INFO L153 SettingsManager]: * Use memory slicer=true [2025-01-09 15:14:37,306 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2025-01-09 15:14:37,306 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2025-01-09 15:14:37,306 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2025-01-09 15:14:37,306 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2025-01-09 15:14:37,306 INFO L153 SettingsManager]: * Use SBE=true [2025-01-09 15:14:37,306 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2025-01-09 15:14:37,306 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2025-01-09 15:14:37,306 INFO L153 SettingsManager]: * sizeof long=4 [2025-01-09 15:14:37,306 INFO L153 SettingsManager]: * sizeof POINTER=4 [2025-01-09 15:14:37,306 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2025-01-09 15:14:37,306 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2025-01-09 15:14:37,306 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2025-01-09 15:14:37,308 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2025-01-09 15:14:37,308 INFO L153 SettingsManager]: * Adapt memory model on pointer casts if necessary=true [2025-01-09 15:14:37,309 INFO L153 SettingsManager]: * Use bitvectors instead of ints=true [2025-01-09 15:14:37,309 INFO L153 SettingsManager]: * Memory model=HoenickeLindenmann_4ByteResolution [2025-01-09 15:14:37,309 INFO L153 SettingsManager]: * sizeof long double=12 [2025-01-09 15:14:37,309 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2025-01-09 15:14:37,309 INFO L153 SettingsManager]: * Behaviour of calls to undefined functions=OVERAPPROXIMATE_BEHAVIOUR [2025-01-09 15:14:37,309 INFO L153 SettingsManager]: * Use constant arrays=true [2025-01-09 15:14:37,309 INFO L151 SettingsManager]: Preferences of IcfgBuilder differ from their defaults: [2025-01-09 15:14:37,309 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2025-01-09 15:14:37,309 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2025-01-09 15:14:37,309 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2025-01-09 15:14:37,309 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-01-09 15:14:37,309 INFO L151 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2025-01-09 15:14:37,309 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2025-01-09 15:14:37,309 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2025-01-09 15:14:37,309 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2025-01-09 15:14:37,309 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-01-09 15:14:37,310 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2025-01-09 15:14:37,310 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2025-01-09 15:14:37,310 INFO L153 SettingsManager]: * Compute procedure contracts=false [2025-01-09 15:14:37,310 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2025-01-09 15:14:37,310 INFO L153 SettingsManager]: * Trace refinement strategy=FOX [2025-01-09 15:14:37,310 INFO L153 SettingsManager]: * Command for external solver=cvc4 --incremental --print-success --lang smt [2025-01-09 15:14:37,310 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2025-01-09 15:14:37,310 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2025-01-09 15:14:37,310 INFO L153 SettingsManager]: * Order on configurations for Petri net unfoldings=DBO [2025-01-09 15:14:37,310 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2025-01-09 15:14:37,310 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 -> 710320fa6de161e4a282e22ef2d80d8d84540a08056bade2f948495e37c0bf61 [2025-01-09 15:14:37,565 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2025-01-09 15:14:37,582 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2025-01-09 15:14:37,583 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2025-01-09 15:14:37,584 INFO L270 PluginConnector]: Initializing CDTParser... [2025-01-09 15:14:37,584 INFO L274 PluginConnector]: CDTParser initialized [2025-01-09 15:14:37,584 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/hardness-nfm22/hardness_variablewrapping_normal_file-78.i [2025-01-09 15:14:38,894 INFO L533 CDTParser]: Created temporary CDT project at /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/1fd4fc8bd/de476894eb224a1894dab644bedf5451/FLAGc65a4282d [2025-01-09 15:14:39,077 INFO L384 CDTParser]: Found 1 translation units. [2025-01-09 15:14:39,078 INFO L180 CDTParser]: Scanning /storage/repos/ultimate-jdk21/releaseScripts/default/sv-benchmarks/c/hardness-nfm22/hardness_variablewrapping_normal_file-78.i [2025-01-09 15:14:39,084 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/1fd4fc8bd/de476894eb224a1894dab644bedf5451/FLAGc65a4282d [2025-01-09 15:14:39,098 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/data/1fd4fc8bd/de476894eb224a1894dab644bedf5451 [2025-01-09 15:14:39,101 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2025-01-09 15:14:39,102 INFO L133 ToolchainWalker]: Walking toolchain with 6 elements. [2025-01-09 15:14:39,103 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2025-01-09 15:14:39,104 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2025-01-09 15:14:39,106 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2025-01-09 15:14:39,107 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 09.01 03:14:39" (1/1) ... [2025-01-09 15:14:39,107 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@12494dd6 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 03:14:39, skipping insertion in model container [2025-01-09 15:14:39,108 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 09.01 03:14:39" (1/1) ... [2025-01-09 15:14:39,119 INFO L175 MainTranslator]: Built tables and reachable declarations [2025-01-09 15:14:39,218 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_variablewrapping_normal_file-78.i[913,926] [2025-01-09 15:14:39,253 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-01-09 15:14:39,266 INFO L200 MainTranslator]: Completed pre-run [2025-01-09 15:14:39,273 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_variablewrapping_normal_file-78.i[913,926] [2025-01-09 15:14:39,292 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-01-09 15:14:39,308 INFO L204 MainTranslator]: Completed translation [2025-01-09 15:14:39,310 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 03:14:39 WrapperNode [2025-01-09 15:14:39,310 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2025-01-09 15:14:39,312 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2025-01-09 15:14:39,312 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2025-01-09 15:14:39,312 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2025-01-09 15:14:39,316 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 03:14:39" (1/1) ... [2025-01-09 15:14:39,329 INFO L184 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 03:14:39" (1/1) ... [2025-01-09 15:14:39,342 INFO L138 Inliner]: procedures = 27, calls = 23, calls flagged for inlining = 8, calls inlined = 8, statements flattened = 90 [2025-01-09 15:14:39,342 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2025-01-09 15:14:39,343 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2025-01-09 15:14:39,343 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2025-01-09 15:14:39,343 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2025-01-09 15:14:39,349 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 03:14:39" (1/1) ... [2025-01-09 15:14:39,350 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 03:14:39" (1/1) ... [2025-01-09 15:14:39,351 INFO L184 PluginConnector]: Executing the observer MemorySlicer from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 03:14:39" (1/1) ... [2025-01-09 15:14:39,362 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 15:14:39,362 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 03:14:39" (1/1) ... [2025-01-09 15:14:39,362 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 03:14:39" (1/1) ... [2025-01-09 15:14:39,369 INFO L184 PluginConnector]: Executing the observer ReplaceArrayAssignments from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 03:14:39" (1/1) ... [2025-01-09 15:14:39,373 INFO L184 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 03:14:39" (1/1) ... [2025-01-09 15:14:39,375 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 03:14:39" (1/1) ... [2025-01-09 15:14:39,379 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 03:14:39" (1/1) ... [2025-01-09 15:14:39,380 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 03:14:39" (1/1) ... [2025-01-09 15:14:39,382 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2025-01-09 15:14:39,382 INFO L112 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2025-01-09 15:14:39,386 INFO L270 PluginConnector]: Initializing RCFGBuilder... [2025-01-09 15:14:39,386 INFO L274 PluginConnector]: RCFGBuilder initialized [2025-01-09 15:14:39,387 INFO L184 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 03:14:39" (1/1) ... [2025-01-09 15:14:39,391 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-01-09 15:14:39,401 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/z3 [2025-01-09 15:14:39,410 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 15:14:39,415 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 15:14:39,427 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2025-01-09 15:14:39,427 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~intINTTYPE1#0 [2025-01-09 15:14:39,427 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2025-01-09 15:14:39,427 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2025-01-09 15:14:39,427 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2025-01-09 15:14:39,427 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2025-01-09 15:14:39,474 INFO L234 CfgBuilder]: Building ICFG [2025-01-09 15:14:39,475 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2025-01-09 15:14:45,009 INFO L? ?]: Removed 14 outVars from TransFormulas that were not future-live. [2025-01-09 15:14:45,010 INFO L283 CfgBuilder]: Performing block encoding [2025-01-09 15:14:45,016 INFO L307 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2025-01-09 15:14:45,016 INFO L312 CfgBuilder]: Removed 1 assume(true) statements. [2025-01-09 15:14:45,016 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 09.01 03:14:45 BoogieIcfgContainer [2025-01-09 15:14:45,016 INFO L131 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2025-01-09 15:14:45,018 INFO L112 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2025-01-09 15:14:45,018 INFO L270 PluginConnector]: Initializing TraceAbstraction... [2025-01-09 15:14:45,021 INFO L274 PluginConnector]: TraceAbstraction initialized [2025-01-09 15:14:45,024 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 09.01 03:14:39" (1/3) ... [2025-01-09 15:14:45,025 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@533a8b90 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 09.01 03:14:45, skipping insertion in model container [2025-01-09 15:14:45,025 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 09.01 03:14:39" (2/3) ... [2025-01-09 15:14:45,025 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@533a8b90 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 09.01 03:14:45, skipping insertion in model container [2025-01-09 15:14:45,025 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 09.01 03:14:45" (3/3) ... [2025-01-09 15:14:45,026 INFO L128 eAbstractionObserver]: Analyzing ICFG hardness_variablewrapping_normal_file-78.i [2025-01-09 15:14:45,035 INFO L216 ceAbstractionStarter]: Automizer settings: Hoare:LoopHeads NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2025-01-09 15:14:45,036 INFO L151 ceAbstractionStarter]: Applying trace abstraction to ICFG hardness_variablewrapping_normal_file-78.i that has 2 procedures, 43 locations, 1 initial locations, 1 loop locations, and 1 error locations. [2025-01-09 15:14:45,079 INFO L332 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2025-01-09 15:14:45,087 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;@4fd560eb, mLbeIndependenceSettings=[IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=false, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2025-01-09 15:14:45,087 INFO L334 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2025-01-09 15:14:45,089 INFO L276 IsEmpty]: Start isEmpty. Operand has 43 states, 30 states have (on average 1.3333333333333333) internal successors, (40), 31 states have internal predecessors, (40), 10 states have call successors, (10), 1 states have call predecessors, (10), 1 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2025-01-09 15:14:45,094 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 73 [2025-01-09 15:14:45,094 INFO L210 NwaCegarLoop]: Found error trace [2025-01-09 15:14:45,095 INFO L218 NwaCegarLoop]: trace histogram [10, 10, 10, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 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 15:14:45,095 INFO L396 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2025-01-09 15:14:45,098 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-09 15:14:45,098 INFO L85 PathProgramCache]: Analyzing trace with hash -1353840755, now seen corresponding path program 1 times [2025-01-09 15:14:45,105 INFO L118 FreeRefinementEngine]: Executing refinement strategy FOX [2025-01-09 15:14:45,105 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [975136148] [2025-01-09 15:14:45,105 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-01-09 15:14:45,105 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 15:14:45,106 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/mathsat [2025-01-09 15:14:45,107 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 15:14:45,109 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 15:14:45,163 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 72 statements into 1 equivalence classes. [2025-01-09 15:14:45,374 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 72 of 72 statements. [2025-01-09 15:14:45,375 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-09 15:14:45,375 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-09 15:14:45,384 INFO L256 TraceCheckSpWp]: Trace formula consists of 121 conjuncts, 1 conjuncts are in the unsatisfiable core [2025-01-09 15:14:45,388 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-01-09 15:14:45,407 INFO L134 CoverageAnalysis]: Checked inductivity of 180 backedges. 98 proven. 0 refuted. 0 times theorem prover too weak. 82 trivial. 0 not checked. [2025-01-09 15:14:45,407 INFO L308 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2025-01-09 15:14:45,407 INFO L136 FreeRefinementEngine]: Strategy FOX found an infeasible trace [2025-01-09 15:14:45,408 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [975136148] [2025-01-09 15:14:45,408 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleMathsat [975136148] provided 1 perfect and 0 imperfect interpolant sequences [2025-01-09 15:14:45,408 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-01-09 15:14:45,408 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2025-01-09 15:14:45,409 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1794863089] [2025-01-09 15:14:45,409 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-01-09 15:14:45,411 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 2 states [2025-01-09 15:14:45,411 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy FOX [2025-01-09 15:14:45,422 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2025-01-09 15:14:45,422 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2025-01-09 15:14:45,423 INFO L87 Difference]: Start difference. First operand has 43 states, 30 states have (on average 1.3333333333333333) internal successors, (40), 31 states have internal predecessors, (40), 10 states have call successors, (10), 1 states have call predecessors, (10), 1 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) 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, (10), 2 states have call predecessors, (10), 2 states have return successors, (10), 2 states have call predecessors, (10), 2 states have call successors, (10) [2025-01-09 15:14:45,434 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2025-01-09 15:14:45,435 INFO L93 Difference]: Finished difference Result 80 states and 125 transitions. [2025-01-09 15:14:45,435 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2025-01-09 15:14:45,436 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, (10), 2 states have call predecessors, (10), 2 states have return successors, (10), 2 states have call predecessors, (10), 2 states have call successors, (10) Word has length 72 [2025-01-09 15:14:45,436 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2025-01-09 15:14:45,439 INFO L225 Difference]: With dead ends: 80 [2025-01-09 15:14:45,439 INFO L226 Difference]: Without dead ends: 40 [2025-01-09 15:14:45,441 INFO L434 NwaCegarLoop]: 0 DeclaredPredicates, 71 GetRequests, 71 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 15:14:45,442 INFO L435 NwaCegarLoop]: 55 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, 55 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 15:14:45,442 INFO L436 NwaCegarLoop]: SdHoareTripleChecker [0 Valid, 55 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 0 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2025-01-09 15:14:45,450 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 40 states. [2025-01-09 15:14:45,459 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 40 to 40. [2025-01-09 15:14:45,460 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 40 states, 28 states have (on average 1.25) internal successors, (35), 28 states have internal predecessors, (35), 10 states have call successors, (10), 1 states have call predecessors, (10), 1 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2025-01-09 15:14:45,462 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 40 states to 40 states and 55 transitions. [2025-01-09 15:14:45,463 INFO L78 Accepts]: Start accepts. Automaton has 40 states and 55 transitions. Word has length 72 [2025-01-09 15:14:45,463 INFO L84 Accepts]: Finished accepts. word is rejected. [2025-01-09 15:14:45,463 INFO L471 AbstractCegarLoop]: Abstraction has 40 states and 55 transitions. [2025-01-09 15:14:45,463 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, (10), 2 states have call predecessors, (10), 2 states have return successors, (10), 2 states have call predecessors, (10), 2 states have call successors, (10) [2025-01-09 15:14:45,464 INFO L276 IsEmpty]: Start isEmpty. Operand 40 states and 55 transitions. [2025-01-09 15:14:45,465 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 73 [2025-01-09 15:14:45,465 INFO L210 NwaCegarLoop]: Found error trace [2025-01-09 15:14:45,465 INFO L218 NwaCegarLoop]: trace histogram [10, 10, 10, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 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 15:14:45,477 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 15:14:45,666 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 15:14:45,666 INFO L396 AbstractCegarLoop]: === Iteration 2 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2025-01-09 15:14:45,667 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-09 15:14:45,667 INFO L85 PathProgramCache]: Analyzing trace with hash 221496661, now seen corresponding path program 1 times [2025-01-09 15:14:45,667 INFO L118 FreeRefinementEngine]: Executing refinement strategy FOX [2025-01-09 15:14:45,667 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1725565768] [2025-01-09 15:14:45,667 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-01-09 15:14:45,668 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 15:14:45,668 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/mathsat [2025-01-09 15:14:45,670 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 15:14:45,671 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 15:14:45,721 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 72 statements into 1 equivalence classes. [2025-01-09 15:14:45,927 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 72 of 72 statements. [2025-01-09 15:14:45,927 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-09 15:14:45,927 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-09 15:14:45,936 INFO L256 TraceCheckSpWp]: Trace formula consists of 121 conjuncts, 5 conjuncts are in the unsatisfiable core [2025-01-09 15:14:45,939 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-01-09 15:14:46,831 INFO L134 CoverageAnalysis]: Checked inductivity of 180 backedges. 97 proven. 15 refuted. 0 times theorem prover too weak. 68 trivial. 0 not checked. [2025-01-09 15:14:46,831 INFO L312 TraceCheckSpWp]: Computing backward predicates... [2025-01-09 15:14:47,303 INFO L134 CoverageAnalysis]: Checked inductivity of 180 backedges. 12 proven. 15 refuted. 0 times theorem prover too weak. 153 trivial. 0 not checked. [2025-01-09 15:14:47,303 INFO L136 FreeRefinementEngine]: Strategy FOX found an infeasible trace [2025-01-09 15:14:47,303 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1725565768] [2025-01-09 15:14:47,303 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1725565768] provided 0 perfect and 2 imperfect interpolant sequences [2025-01-09 15:14:47,303 INFO L185 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2025-01-09 15:14:47,304 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [5, 5] total 9 [2025-01-09 15:14:47,304 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [69323248] [2025-01-09 15:14:47,304 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2025-01-09 15:14:47,305 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2025-01-09 15:14:47,305 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy FOX [2025-01-09 15:14:47,305 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2025-01-09 15:14:47,306 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=27, Invalid=45, Unknown=0, NotChecked=0, Total=72 [2025-01-09 15:14:47,306 INFO L87 Difference]: Start difference. First operand 40 states and 55 transitions. Second operand has 9 states, 9 states have (on average 5.555555555555555) internal successors, (50), 9 states have internal predecessors, (50), 4 states have call successors, (20), 3 states have call predecessors, (20), 5 states have return successors, (20), 4 states have call predecessors, (20), 4 states have call successors, (20) [2025-01-09 15:14:49,505 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 1.67s for a HTC check with result INVALID. Formula has sorts [Bool, FloatingPoint, RoundingMode, Real, BitVec], hasArrays=false, hasNonlinArith=false, quantifiers [] [2025-01-09 15:14:53,565 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 3.74s for a HTC check with result INVALID. Formula has sorts [Bool, FloatingPoint, RoundingMode, Real, BitVec], hasArrays=false, hasNonlinArith=false, quantifiers [] [2025-01-09 15:14:53,658 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2025-01-09 15:14:53,659 INFO L93 Difference]: Finished difference Result 83 states and 112 transitions. [2025-01-09 15:14:53,687 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2025-01-09 15:14:53,688 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 5.555555555555555) internal successors, (50), 9 states have internal predecessors, (50), 4 states have call successors, (20), 3 states have call predecessors, (20), 5 states have return successors, (20), 4 states have call predecessors, (20), 4 states have call successors, (20) Word has length 72 [2025-01-09 15:14:53,688 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2025-01-09 15:14:53,689 INFO L225 Difference]: With dead ends: 83 [2025-01-09 15:14:53,689 INFO L226 Difference]: Without dead ends: 46 [2025-01-09 15:14:53,689 INFO L434 NwaCegarLoop]: 0 DeclaredPredicates, 145 GetRequests, 135 SyntacticMatches, 0 SemanticMatches, 10 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 11 ImplicationChecksByTransitivity, 0.4s TimeCoverageRelationStatistics Valid=54, Invalid=78, Unknown=0, NotChecked=0, Total=132 [2025-01-09 15:14:53,691 INFO L435 NwaCegarLoop]: 35 mSDtfsCounter, 29 mSDsluCounter, 50 mSDsCounter, 0 mSdLazyCounter, 80 mSolverCounterSat, 4 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 6.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 33 SdHoareTripleChecker+Valid, 85 SdHoareTripleChecker+Invalid, 84 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 4 IncrementalHoareTripleChecker+Valid, 80 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 6.2s IncrementalHoareTripleChecker+Time [2025-01-09 15:14:53,691 INFO L436 NwaCegarLoop]: SdHoareTripleChecker [33 Valid, 85 Invalid, 84 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [4 Valid, 80 Invalid, 0 Unknown, 0 Unchecked, 6.2s Time] [2025-01-09 15:14:53,692 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 46 states. [2025-01-09 15:14:53,697 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 46 to 44. [2025-01-09 15:14:53,698 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 44 states, 31 states have (on average 1.1935483870967742) internal successors, (37), 31 states have internal predecessors, (37), 10 states have call successors, (10), 2 states have call predecessors, (10), 2 states have return successors, (10), 10 states have call predecessors, (10), 10 states have call successors, (10) [2025-01-09 15:14:53,698 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 44 states to 44 states and 57 transitions. [2025-01-09 15:14:53,698 INFO L78 Accepts]: Start accepts. Automaton has 44 states and 57 transitions. Word has length 72 [2025-01-09 15:14:53,699 INFO L84 Accepts]: Finished accepts. word is rejected. [2025-01-09 15:14:53,699 INFO L471 AbstractCegarLoop]: Abstraction has 44 states and 57 transitions. [2025-01-09 15:14:53,699 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 9 states have (on average 5.555555555555555) internal successors, (50), 9 states have internal predecessors, (50), 4 states have call successors, (20), 3 states have call predecessors, (20), 5 states have return successors, (20), 4 states have call predecessors, (20), 4 states have call successors, (20) [2025-01-09 15:14:53,699 INFO L276 IsEmpty]: Start isEmpty. Operand 44 states and 57 transitions. [2025-01-09 15:14:53,702 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 73 [2025-01-09 15:14:53,702 INFO L210 NwaCegarLoop]: Found error trace [2025-01-09 15:14:53,703 INFO L218 NwaCegarLoop]: trace histogram [10, 10, 10, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 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 15:14:53,723 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 (3)] Ended with exit code 0 [2025-01-09 15:14:53,903 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 15:14:53,904 INFO L396 AbstractCegarLoop]: === Iteration 3 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2025-01-09 15:14:53,904 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-01-09 15:14:53,904 INFO L85 PathProgramCache]: Analyzing trace with hash 614523671, now seen corresponding path program 1 times [2025-01-09 15:14:53,905 INFO L118 FreeRefinementEngine]: Executing refinement strategy FOX [2025-01-09 15:14:53,905 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1464252164] [2025-01-09 15:14:53,905 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-01-09 15:14:53,905 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 15:14:53,905 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate-jdk21/releaseScripts/default/UAutomizer-linux/mathsat [2025-01-09 15:14:53,907 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 15:14:53,908 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 15:14:53,939 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 72 statements into 1 equivalence classes. [2025-01-09 15:14:54,248 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 72 of 72 statements. [2025-01-09 15:14:54,248 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-01-09 15:14:54,248 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-01-09 15:14:54,261 INFO L256 TraceCheckSpWp]: Trace formula consists of 122 conjuncts, 28 conjuncts are in the unsatisfiable core [2025-01-09 15:14:54,264 INFO L279 TraceCheckSpWp]: Computing forward predicates...