./Ultimate.py --spec ../sv-benchmarks/c/properties/unreach-call.prp --file ../sv-benchmarks/c/hardness-nfm22/hardness_variablewrapping_wrapper-s_file-0.i --full-output --architecture 32bit -------------------------------------------------------------------------------- Checking for ERROR reachability Using default analysis Version 798a7b37 Calling Ultimate with: /root/.sdkman/candidates/java/21.0.5-tem/bin/java -Dosgi.configuration.area=/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/config -Xmx15G -Xms4m -jar /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/org.eclipse.equinox.launcher_1.6.800.v20240513-1750.jar -data @noDefault -ultimatedata /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data -tc /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/AutomizerReach.xml -i ../sv-benchmarks/c/hardness-nfm22/hardness_variablewrapping_wrapper-s_file-0.i -s /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Default.epf --cacsl2boogietranslator.entry.function main --witnessprinter.witness.directory /storage/repos/ultimate/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 673f48eff2c9fa553be4e6ec558f63c53157e8de398373430e9065fe538627b8 --- Real Ultimate output --- This is Ultimate 0.3.0-?-798a7b3-m [2025-03-04 01:35:12,747 INFO L188 SettingsManager]: Resetting all preferences to default values... [2025-03-04 01:35:12,793 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Default.epf [2025-03-04 01:35:12,797 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2025-03-04 01:35:12,799 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2025-03-04 01:35:12,817 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2025-03-04 01:35:12,818 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2025-03-04 01:35:12,818 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2025-03-04 01:35:12,818 INFO L151 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2025-03-04 01:35:12,818 INFO L153 SettingsManager]: * Use memory slicer=true [2025-03-04 01:35:12,818 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2025-03-04 01:35:12,819 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2025-03-04 01:35:12,819 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2025-03-04 01:35:12,819 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2025-03-04 01:35:12,819 INFO L153 SettingsManager]: * Use SBE=true [2025-03-04 01:35:12,819 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2025-03-04 01:35:12,819 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2025-03-04 01:35:12,819 INFO L153 SettingsManager]: * sizeof long=4 [2025-03-04 01:35:12,819 INFO L153 SettingsManager]: * Overapproximate operations on floating types=true [2025-03-04 01:35:12,819 INFO L153 SettingsManager]: * sizeof POINTER=4 [2025-03-04 01:35:12,820 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2025-03-04 01:35:12,820 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2025-03-04 01:35:12,820 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2025-03-04 01:35:12,820 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2025-03-04 01:35:12,820 INFO L153 SettingsManager]: * sizeof long double=12 [2025-03-04 01:35:12,820 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2025-03-04 01:35:12,820 INFO L153 SettingsManager]: * Behaviour of calls to undefined functions=OVERAPPROXIMATE_BEHAVIOUR [2025-03-04 01:35:12,820 INFO L153 SettingsManager]: * Use constant arrays=true [2025-03-04 01:35:12,820 INFO L151 SettingsManager]: Preferences of IcfgBuilder differ from their defaults: [2025-03-04 01:35:12,820 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2025-03-04 01:35:12,820 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2025-03-04 01:35:12,821 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2025-03-04 01:35:12,821 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-03-04 01:35:12,821 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2025-03-04 01:35:12,821 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2025-03-04 01:35:12,821 INFO L153 SettingsManager]: * Compute procedure contracts=false [2025-03-04 01:35:12,821 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2025-03-04 01:35:12,821 INFO L153 SettingsManager]: * Trace refinement strategy=CAMEL [2025-03-04 01:35:12,821 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2025-03-04 01:35:12,821 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2025-03-04 01:35:12,821 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2025-03-04 01:35:12,821 INFO L153 SettingsManager]: * Order on configurations for Petri net unfoldings=DBO [2025-03-04 01:35:12,821 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2025-03-04 01:35:12,822 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/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 -> 673f48eff2c9fa553be4e6ec558f63c53157e8de398373430e9065fe538627b8 [2025-03-04 01:35:13,044 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2025-03-04 01:35:13,050 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2025-03-04 01:35:13,052 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2025-03-04 01:35:13,053 INFO L270 PluginConnector]: Initializing CDTParser... [2025-03-04 01:35:13,053 INFO L274 PluginConnector]: CDTParser initialized [2025-03-04 01:35:13,054 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/hardness-nfm22/hardness_variablewrapping_wrapper-s_file-0.i [2025-03-04 01:35:14,165 INFO L533 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/2601d3493/acee5e7ba45e48ff8db8f72fb542b7b5/FLAGf7c5292f7 [2025-03-04 01:35:14,368 INFO L384 CDTParser]: Found 1 translation units. [2025-03-04 01:35:14,369 INFO L180 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/hardness-nfm22/hardness_variablewrapping_wrapper-s_file-0.i [2025-03-04 01:35:14,375 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/2601d3493/acee5e7ba45e48ff8db8f72fb542b7b5/FLAGf7c5292f7 [2025-03-04 01:35:14,735 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/2601d3493/acee5e7ba45e48ff8db8f72fb542b7b5 [2025-03-04 01:35:14,737 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2025-03-04 01:35:14,739 INFO L133 ToolchainWalker]: Walking toolchain with 6 elements. [2025-03-04 01:35:14,740 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2025-03-04 01:35:14,740 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2025-03-04 01:35:14,743 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2025-03-04 01:35:14,743 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 04.03 01:35:14" (1/1) ... [2025-03-04 01:35:14,744 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@209c55a8 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 04.03 01:35:14, skipping insertion in model container [2025-03-04 01:35:14,744 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 04.03 01:35:14" (1/1) ... [2025-03-04 01:35:14,758 INFO L175 MainTranslator]: Built tables and reachable declarations [2025-03-04 01:35:14,844 WARN L250 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/hardness-nfm22/hardness_variablewrapping_wrapper-s_file-0.i[915,928] [2025-03-04 01:35:14,874 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-03-04 01:35:14,882 INFO L200 MainTranslator]: Completed pre-run [2025-03-04 01:35:14,889 WARN L250 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/hardness-nfm22/hardness_variablewrapping_wrapper-s_file-0.i[915,928] [2025-03-04 01:35:14,911 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-03-04 01:35:14,922 INFO L204 MainTranslator]: Completed translation [2025-03-04 01:35:14,922 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 04.03 01:35:14 WrapperNode [2025-03-04 01:35:14,923 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2025-03-04 01:35:14,923 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2025-03-04 01:35:14,923 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2025-03-04 01:35:14,923 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2025-03-04 01:35:14,927 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 04.03 01:35:14" (1/1) ... [2025-03-04 01:35:14,940 INFO L184 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 04.03 01:35:14" (1/1) ... [2025-03-04 01:35:14,961 INFO L138 Inliner]: procedures = 29, calls = 111, calls flagged for inlining = 8, calls inlined = 8, statements flattened = 356 [2025-03-04 01:35:14,962 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2025-03-04 01:35:14,962 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2025-03-04 01:35:14,962 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2025-03-04 01:35:14,962 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2025-03-04 01:35:14,969 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 04.03 01:35:14" (1/1) ... [2025-03-04 01:35:14,969 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 04.03 01:35:14" (1/1) ... [2025-03-04 01:35:14,974 INFO L184 PluginConnector]: Executing the observer MemorySlicer from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 04.03 01:35:14" (1/1) ... [2025-03-04 01:35:14,988 INFO L175 MemorySlicer]: Split 91 memory accesses to 2 slices as follows [2, 89]. 98 percent of accesses are in the largest equivalence class. The 11 initializations are split as follows [2, 9]. The 13 writes are split as follows [0, 13]. [2025-03-04 01:35:14,988 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 04.03 01:35:14" (1/1) ... [2025-03-04 01:35:14,988 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 04.03 01:35:14" (1/1) ... [2025-03-04 01:35:14,997 INFO L184 PluginConnector]: Executing the observer ReplaceArrayAssignments from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 04.03 01:35:14" (1/1) ... [2025-03-04 01:35:14,998 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 04.03 01:35:14" (1/1) ... [2025-03-04 01:35:14,999 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 04.03 01:35:14" (1/1) ... [2025-03-04 01:35:15,000 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 04.03 01:35:14" (1/1) ... [2025-03-04 01:35:15,007 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2025-03-04 01:35:15,010 INFO L112 PluginConnector]: ------------------------IcfgBuilder---------------------------- [2025-03-04 01:35:15,010 INFO L270 PluginConnector]: Initializing IcfgBuilder... [2025-03-04 01:35:15,010 INFO L274 PluginConnector]: IcfgBuilder initialized [2025-03-04 01:35:15,011 INFO L184 PluginConnector]: Executing the observer IcfgBuilderObserver from plugin IcfgBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 04.03 01:35:14" (1/1) ... [2025-03-04 01:35:15,015 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-03-04 01:35:15,023 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2025-03-04 01:35:15,032 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 (exit command is (exit), workingDir is null) [2025-03-04 01:35:15,034 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 (1)] Waiting until timeout for monitored process [2025-03-04 01:35:15,048 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2025-03-04 01:35:15,048 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#0 [2025-03-04 01:35:15,048 INFO L130 BoogieDeclarations]: Found specification of procedure write~int#1 [2025-03-04 01:35:15,048 INFO L130 BoogieDeclarations]: Found specification of procedure read~real#0 [2025-03-04 01:35:15,048 INFO L130 BoogieDeclarations]: Found specification of procedure read~real#1 [2025-03-04 01:35:15,048 INFO L130 BoogieDeclarations]: Found specification of procedure write~real#0 [2025-03-04 01:35:15,048 INFO L130 BoogieDeclarations]: Found specification of procedure write~real#1 [2025-03-04 01:35:15,048 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#0 [2025-03-04 01:35:15,048 INFO L130 BoogieDeclarations]: Found specification of procedure read~int#1 [2025-03-04 01:35:15,048 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~real#0 [2025-03-04 01:35:15,048 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~real#1 [2025-03-04 01:35:15,048 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2025-03-04 01:35:15,048 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2025-03-04 01:35:15,048 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#0 [2025-03-04 01:35:15,048 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int#1 [2025-03-04 01:35:15,048 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2025-03-04 01:35:15,048 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2025-03-04 01:35:15,116 INFO L256 CfgBuilder]: Building ICFG [2025-03-04 01:35:15,118 INFO L286 CfgBuilder]: Building CFG for each procedure with an implementation [2025-03-04 01:35:15,380 INFO L1325 $ProcedureCfgBuilder]: dead code at ProgramPoint L103: havoc property_#t~mem54#1;havoc property_#t~ite62#1;havoc property_#t~mem57#1;havoc property_#t~mem55#1;havoc property_#t~mem56#1;havoc property_#t~mem61#1;havoc property_#t~mem58#1;havoc property_#t~ite60#1;havoc property_#t~mem59#1;havoc property_#t~mem65#1;havoc property_#t~mem63#1;havoc property_#t~mem64#1;havoc property_#t~mem66#1;havoc property_#t~ite82#1;havoc property_#t~mem67#1;havoc property_#t~ite79#1;havoc property_#t~mem68#1;havoc property_#t~mem69#1;havoc property_#t~ite76#1;havoc property_#t~mem70#1;havoc property_#t~ite73#1;havoc property_#t~mem72#1;havoc property_#t~mem71#1;havoc property_#t~mem75#1;havoc property_#t~mem74#1;havoc property_#t~mem78#1;havoc property_#t~mem77#1;havoc property_#t~mem81#1;havoc property_#t~mem80#1;havoc property_#t~short83#1;havoc property_#t~ite87#1;havoc property_#t~ite86#1;havoc property_#t~mem85#1;havoc property_#t~mem84#1;havoc property_#t~short88#1;havoc property_#t~mem89#1;havoc property_#t~ite94#1;havoc property_#t~mem91#1;havoc property_#t~mem90#1;havoc property_#t~ite93#1;havoc property_#t~mem92#1;havoc property_#t~short95#1; [2025-03-04 01:35:15,398 INFO L? ?]: Removed 77 outVars from TransFormulas that were not future-live. [2025-03-04 01:35:15,399 INFO L307 CfgBuilder]: Performing block encoding [2025-03-04 01:35:15,408 INFO L331 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2025-03-04 01:35:15,409 INFO L336 CfgBuilder]: Removed 0 assume(true) statements. [2025-03-04 01:35:15,409 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 04.03 01:35:15 BoogieIcfgContainer [2025-03-04 01:35:15,409 INFO L131 PluginConnector]: ------------------------ END IcfgBuilder---------------------------- [2025-03-04 01:35:15,411 INFO L112 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2025-03-04 01:35:15,411 INFO L270 PluginConnector]: Initializing TraceAbstraction... [2025-03-04 01:35:15,414 INFO L274 PluginConnector]: TraceAbstraction initialized [2025-03-04 01:35:15,414 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 04.03 01:35:14" (1/3) ... [2025-03-04 01:35:15,415 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@1bad18f3 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 04.03 01:35:15, skipping insertion in model container [2025-03-04 01:35:15,415 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 04.03 01:35:14" (2/3) ... [2025-03-04 01:35:15,415 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@1bad18f3 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 04.03 01:35:15, skipping insertion in model container [2025-03-04 01:35:15,415 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 04.03 01:35:15" (3/3) ... [2025-03-04 01:35:15,416 INFO L128 eAbstractionObserver]: Analyzing ICFG hardness_variablewrapping_wrapper-s_file-0.i [2025-03-04 01:35:15,425 INFO L216 ceAbstractionStarter]: Automizer settings: Hoare:LoopHeads NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2025-03-04 01:35:15,426 INFO L151 ceAbstractionStarter]: Applying trace abstraction to ICFG hardness_variablewrapping_wrapper-s_file-0.i that has 2 procedures, 84 locations, 1 initial locations, 1 loop locations, and 1 error locations. [2025-03-04 01:35:15,460 INFO L332 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2025-03-04 01:35:15,467 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;@2d595f74, mLbeIndependenceSettings=[IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=false, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2025-03-04 01:35:15,467 INFO L334 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2025-03-04 01:35:15,471 INFO L276 IsEmpty]: Start isEmpty. Operand has 84 states, 73 states have (on average 1.452054794520548) internal successors, (106), 74 states have internal predecessors, (106), 8 states have call successors, (8), 1 states have call predecessors, (8), 1 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2025-03-04 01:35:15,478 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 79 [2025-03-04 01:35:15,478 INFO L210 NwaCegarLoop]: Found error trace [2025-03-04 01:35:15,479 INFO L218 NwaCegarLoop]: trace histogram [8, 8, 8, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 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-03-04 01:35:15,479 INFO L396 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2025-03-04 01:35:15,483 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-03-04 01:35:15,484 INFO L85 PathProgramCache]: Analyzing trace with hash 405337358, now seen corresponding path program 1 times [2025-03-04 01:35:15,489 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-03-04 01:35:15,490 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [589083061] [2025-03-04 01:35:15,490 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-03-04 01:35:15,491 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-03-04 01:35:15,554 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 78 statements into 1 equivalence classes. [2025-03-04 01:35:15,574 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 78 of 78 statements. [2025-03-04 01:35:15,574 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-04 01:35:15,574 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-03-04 01:35:15,664 INFO L134 CoverageAnalysis]: Checked inductivity of 112 backedges. 0 proven. 14 refuted. 0 times theorem prover too weak. 98 trivial. 0 not checked. [2025-03-04 01:35:15,664 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2025-03-04 01:35:15,665 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [589083061] [2025-03-04 01:35:15,665 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [589083061] provided 0 perfect and 1 imperfect interpolant sequences [2025-03-04 01:35:15,665 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1505439904] [2025-03-04 01:35:15,666 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-03-04 01:35:15,666 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2025-03-04 01:35:15,666 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2025-03-04 01:35:15,668 INFO L229 MonitoredProcess]: Starting monitored process 2 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2025-03-04 01:35:15,669 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Waiting until timeout for monitored process [2025-03-04 01:35:15,757 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 78 statements into 1 equivalence classes. [2025-03-04 01:35:15,800 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 78 of 78 statements. [2025-03-04 01:35:15,800 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-04 01:35:15,800 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-03-04 01:35:15,802 INFO L256 TraceCheckSpWp]: Trace formula consists of 268 conjuncts, 1 conjuncts are in the unsatisfiable core [2025-03-04 01:35:15,807 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-03-04 01:35:15,818 INFO L134 CoverageAnalysis]: Checked inductivity of 112 backedges. 14 proven. 0 refuted. 0 times theorem prover too weak. 98 trivial. 0 not checked. [2025-03-04 01:35:15,818 INFO L308 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2025-03-04 01:35:15,818 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1505439904] provided 1 perfect and 0 imperfect interpolant sequences [2025-03-04 01:35:15,818 INFO L185 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2025-03-04 01:35:15,819 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [2] total 2 [2025-03-04 01:35:15,820 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1967264649] [2025-03-04 01:35:15,820 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-03-04 01:35:15,825 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 2 states [2025-03-04 01:35:15,826 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2025-03-04 01:35:15,840 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2025-03-04 01:35:15,841 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2025-03-04 01:35:15,842 INFO L87 Difference]: Start difference. First operand has 84 states, 73 states have (on average 1.452054794520548) internal successors, (106), 74 states have internal predecessors, (106), 8 states have call successors, (8), 1 states have call predecessors, (8), 1 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) Second operand has 2 states, 2 states have (on average 21.5) internal successors, (43), 2 states have internal predecessors, (43), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (8), 1 states have call predecessors, (8), 2 states have call successors, (8) [2025-03-04 01:35:15,860 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2025-03-04 01:35:15,861 INFO L93 Difference]: Finished difference Result 159 states and 242 transitions. [2025-03-04 01:35:15,861 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2025-03-04 01:35:15,863 INFO L78 Accepts]: Start accepts. Automaton has has 2 states, 2 states have (on average 21.5) internal successors, (43), 2 states have internal predecessors, (43), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (8), 1 states have call predecessors, (8), 2 states have call successors, (8) Word has length 78 [2025-03-04 01:35:15,863 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2025-03-04 01:35:15,868 INFO L225 Difference]: With dead ends: 159 [2025-03-04 01:35:15,868 INFO L226 Difference]: Without dead ends: 78 [2025-03-04 01:35:15,870 INFO L434 NwaCegarLoop]: 0 DeclaredPredicates, 79 GetRequests, 79 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-03-04 01:35:15,873 INFO L435 NwaCegarLoop]: 108 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, 108 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-03-04 01:35:15,873 INFO L436 NwaCegarLoop]: SdHoareTripleChecker [0 Valid, 108 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 0 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2025-03-04 01:35:15,881 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 78 states. [2025-03-04 01:35:15,892 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 78 to 78. [2025-03-04 01:35:15,893 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 78 states, 68 states have (on average 1.3529411764705883) internal successors, (92), 68 states have internal predecessors, (92), 8 states have call successors, (8), 1 states have call predecessors, (8), 1 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2025-03-04 01:35:15,896 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 78 states to 78 states and 108 transitions. [2025-03-04 01:35:15,897 INFO L78 Accepts]: Start accepts. Automaton has 78 states and 108 transitions. Word has length 78 [2025-03-04 01:35:15,897 INFO L84 Accepts]: Finished accepts. word is rejected. [2025-03-04 01:35:15,897 INFO L471 AbstractCegarLoop]: Abstraction has 78 states and 108 transitions. [2025-03-04 01:35:15,897 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 2 states, 2 states have (on average 21.5) internal successors, (43), 2 states have internal predecessors, (43), 2 states have call successors, (8), 2 states have call predecessors, (8), 1 states have return successors, (8), 1 states have call predecessors, (8), 2 states have call successors, (8) [2025-03-04 01:35:15,897 INFO L276 IsEmpty]: Start isEmpty. Operand 78 states and 108 transitions. [2025-03-04 01:35:15,899 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 79 [2025-03-04 01:35:15,899 INFO L210 NwaCegarLoop]: Found error trace [2025-03-04 01:35:15,899 INFO L218 NwaCegarLoop]: trace histogram [8, 8, 8, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 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-03-04 01:35:15,906 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Ended with exit code 0 [2025-03-04 01:35:16,100 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 2 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable0 [2025-03-04 01:35:16,100 INFO L396 AbstractCegarLoop]: === Iteration 2 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2025-03-04 01:35:16,101 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-03-04 01:35:16,101 INFO L85 PathProgramCache]: Analyzing trace with hash 650052084, now seen corresponding path program 1 times [2025-03-04 01:35:16,101 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2025-03-04 01:35:16,101 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [920005644] [2025-03-04 01:35:16,101 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-03-04 01:35:16,101 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2025-03-04 01:35:16,136 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 78 statements into 1 equivalence classes. [2025-03-04 01:35:16,191 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 78 of 78 statements. [2025-03-04 01:35:16,191 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-04 01:35:16,191 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-03-04 01:35:16,191 INFO L348 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2025-03-04 01:35:16,201 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 78 statements into 1 equivalence classes. [2025-03-04 01:35:16,227 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 78 of 78 statements. [2025-03-04 01:35:16,227 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-04 01:35:16,227 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is sat [2025-03-04 01:35:16,262 INFO L130 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2025-03-04 01:35:16,262 INFO L340 BasicCegarLoop]: Counterexample is feasible [2025-03-04 01:35:16,263 INFO L782 garLoopResultBuilder]: Registering result UNSAFE for location ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION (0 of 1 remaining) [2025-03-04 01:35:16,264 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1 [2025-03-04 01:35:16,266 INFO L422 BasicCegarLoop]: Path program histogram: [1, 1] [2025-03-04 01:35:16,313 INFO L170 ceAbstractionStarter]: Computing trace abstraction results [2025-03-04 01:35:16,315 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction CFG 04.03 01:35:16 BoogieIcfgContainer [2025-03-04 01:35:16,315 INFO L131 PluginConnector]: ------------------------ END TraceAbstraction---------------------------- [2025-03-04 01:35:16,315 INFO L112 PluginConnector]: ------------------------Witness Printer---------------------------- [2025-03-04 01:35:16,316 INFO L270 PluginConnector]: Initializing Witness Printer... [2025-03-04 01:35:16,316 INFO L274 PluginConnector]: Witness Printer initialized [2025-03-04 01:35:16,316 INFO L184 PluginConnector]: Executing the observer RCFGCatcher from plugin Witness Printer for "de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 04.03 01:35:15" (3/4) ... [2025-03-04 01:35:16,317 INFO L149 WitnessPrinter]: No result that supports witness generation found [2025-03-04 01:35:16,318 INFO L131 PluginConnector]: ------------------------ END Witness Printer---------------------------- [2025-03-04 01:35:16,318 INFO L158 Benchmark]: Toolchain (without parser) took 1579.57ms. Allocated memory is still 167.8MB. Free memory was 132.4MB in the beginning and 112.6MB in the end (delta: 19.8MB). Peak memory consumption was 15.3MB. Max. memory is 16.1GB. [2025-03-04 01:35:16,319 INFO L158 Benchmark]: CDTParser took 0.94ms. Allocated memory is still 201.3MB. Free memory is still 125.7MB. There was no memory consumed. Max. memory is 16.1GB. [2025-03-04 01:35:16,319 INFO L158 Benchmark]: CACSL2BoogieTranslator took 183.01ms. Allocated memory is still 167.8MB. Free memory was 132.4MB in the beginning and 118.0MB in the end (delta: 14.3MB). Peak memory consumption was 16.8MB. Max. memory is 16.1GB. [2025-03-04 01:35:16,319 INFO L158 Benchmark]: Boogie Procedure Inliner took 38.59ms. Allocated memory is still 167.8MB. Free memory was 118.0MB in the beginning and 115.3MB in the end (delta: 2.7MB). There was no memory consumed. Max. memory is 16.1GB. [2025-03-04 01:35:16,319 INFO L158 Benchmark]: Boogie Preprocessor took 45.19ms. Allocated memory is still 167.8MB. Free memory was 115.3MB in the beginning and 112.2MB in the end (delta: 3.2MB). There was no memory consumed. Max. memory is 16.1GB. [2025-03-04 01:35:16,319 INFO L158 Benchmark]: IcfgBuilder took 399.02ms. Allocated memory is still 167.8MB. Free memory was 112.2MB in the beginning and 87.6MB in the end (delta: 24.6MB). Peak memory consumption was 25.2MB. Max. memory is 16.1GB. [2025-03-04 01:35:16,319 INFO L158 Benchmark]: TraceAbstraction took 904.11ms. Allocated memory is still 167.8MB. Free memory was 86.7MB in the beginning and 112.6MB in the end (delta: -25.9MB). There was no memory consumed. Max. memory is 16.1GB. [2025-03-04 01:35:16,320 INFO L158 Benchmark]: Witness Printer took 2.48ms. Allocated memory is still 167.8MB. Free memory was 112.6MB in the beginning and 112.6MB in the end (delta: 36.9kB). There was no memory consumed. Max. memory is 16.1GB. [2025-03-04 01:35:16,320 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.94ms. Allocated memory is still 201.3MB. Free memory is still 125.7MB. There was no memory consumed. Max. memory is 16.1GB. * CACSL2BoogieTranslator took 183.01ms. Allocated memory is still 167.8MB. Free memory was 132.4MB in the beginning and 118.0MB in the end (delta: 14.3MB). Peak memory consumption was 16.8MB. Max. memory is 16.1GB. * Boogie Procedure Inliner took 38.59ms. Allocated memory is still 167.8MB. Free memory was 118.0MB in the beginning and 115.3MB in the end (delta: 2.7MB). There was no memory consumed. Max. memory is 16.1GB. * Boogie Preprocessor took 45.19ms. Allocated memory is still 167.8MB. Free memory was 115.3MB in the beginning and 112.2MB in the end (delta: 3.2MB). There was no memory consumed. Max. memory is 16.1GB. * IcfgBuilder took 399.02ms. Allocated memory is still 167.8MB. Free memory was 112.2MB in the beginning and 87.6MB in the end (delta: 24.6MB). Peak memory consumption was 25.2MB. Max. memory is 16.1GB. * TraceAbstraction took 904.11ms. Allocated memory is still 167.8MB. Free memory was 86.7MB in the beginning and 112.6MB in the end (delta: -25.9MB). There was no memory consumed. Max. memory is 16.1GB. * Witness Printer took 2.48ms. Allocated memory is still 167.8MB. Free memory was 112.6MB in the beginning and 112.6MB in the end (delta: 36.9kB). 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 62, overapproximation of someBinaryDOUBLEComparisonOperation at line 103, overapproximation of someBinaryDOUBLEComparisonOperation at line 87, overapproximation of someBinaryDOUBLEComparisonOperation at line 66, overapproximation of someBinaryDOUBLEComparisonOperation at line 89, overapproximation of someBinaryDOUBLEComparisonOperation at line 87, overapproximation of someBinaryDOUBLEComparisonOperation at line 89. Possible FailurePath: [L33] unsigned char isInitial = 0; [L34-L44] struct WrapperStruct0 WrapperStruct0 = { 25.8, 1, 128.2, 15.4, 5.25, 1, 100, 1, 5 }; [L34-L44] struct WrapperStruct0 WrapperStruct0 = { 25.8, 1, 128.2, 15.4, 5.25, 1, 100, 1, 5 }; [L34-L44] struct WrapperStruct0 WrapperStruct0 = { 25.8, 1, 128.2, 15.4, 5.25, 1, 100, 1, 5 }; [L34-L44] struct WrapperStruct0 WrapperStruct0 = { 25.8, 1, 128.2, 15.4, 5.25, 1, 100, 1, 5 }; [L34-L44] struct WrapperStruct0 WrapperStruct0 = { 25.8, 1, 128.2, 15.4, 5.25, 1, 100, 1, 5 }; [L34-L44] struct WrapperStruct0 WrapperStruct0 = { 25.8, 1, 128.2, 15.4, 5.25, 1, 100, 1, 5 }; [L34-L44] struct WrapperStruct0 WrapperStruct0 = { 25.8, 1, 128.2, 15.4, 5.25, 1, 100, 1, 5 }; [L34-L44] struct WrapperStruct0 WrapperStruct0 = { 25.8, 1, 128.2, 15.4, 5.25, 1, 100, 1, 5 }; [L34-L44] struct WrapperStruct0 WrapperStruct0 = { 25.8, 1, 128.2, 15.4, 5.25, 1, 100, 1, 5 }; [L34-L44] struct WrapperStruct0 WrapperStruct0 = { 25.8, 1, 128.2, 15.4, 5.25, 1, 100, 1, 5 }; [L45] double last_1_WrapperStruct0_var_1_5 = 5.25; [L46] unsigned char last_1_WrapperStruct0_var_1_10 = 100; [L47] unsigned short int last_1_WrapperStruct0_var_1_13 = 5; VAL [WrapperStruct0={4:0}, isInitial=0, last_1_WrapperStruct0_var_1_10=100, last_1_WrapperStruct0_var_1_13=5, last_1_WrapperStruct0_var_1_5=21/4] [L107] isInitial = 1 [L108] FCALL initially() [L109] COND TRUE 1 [L110] CALL updateLastVariables() [L98] EXPR WrapperStruct0.var_1_5 [L98] last_1_WrapperStruct0_var_1_5 = WrapperStruct0.var_1_5 [L99] EXPR WrapperStruct0.var_1_10 [L99] last_1_WrapperStruct0_var_1_10 = WrapperStruct0.var_1_10 [L100] EXPR WrapperStruct0.var_1_13 [L100] last_1_WrapperStruct0_var_1_13 = WrapperStruct0.var_1_13 [L110] RET updateLastVariables() [L111] CALL updateVariables() [L83] WrapperStruct0.var_1_2 = __VERIFIER_nondet_uchar() [L84] EXPR WrapperStruct0.var_1_2 VAL [WrapperStruct0={4:0}, isInitial=1, last_1_WrapperStruct0_var_1_10=100, last_1_WrapperStruct0_var_1_13=5, last_1_WrapperStruct0_var_1_5=21/4] [L84] CALL assume_abort_if_not(WrapperStruct0.var_1_2 >= 0) VAL [WrapperStruct0={4:0}, \old(cond)=1, isInitial=1, last_1_WrapperStruct0_var_1_10=100, last_1_WrapperStruct0_var_1_13=5, last_1_WrapperStruct0_var_1_5=21/4] [L20] COND FALSE !(!cond) VAL [WrapperStruct0={4:0}, \old(cond)=1, isInitial=1, last_1_WrapperStruct0_var_1_10=100, last_1_WrapperStruct0_var_1_13=5, last_1_WrapperStruct0_var_1_5=21/4] [L84] RET assume_abort_if_not(WrapperStruct0.var_1_2 >= 0) VAL [WrapperStruct0={4:0}, isInitial=1, last_1_WrapperStruct0_var_1_10=100, last_1_WrapperStruct0_var_1_13=5, last_1_WrapperStruct0_var_1_5=21/4] [L85] EXPR WrapperStruct0.var_1_2 VAL [WrapperStruct0={4:0}, isInitial=1, last_1_WrapperStruct0_var_1_10=100, last_1_WrapperStruct0_var_1_13=5, last_1_WrapperStruct0_var_1_5=21/4] [L85] CALL assume_abort_if_not(WrapperStruct0.var_1_2 <= 1) VAL [WrapperStruct0={4:0}, \old(cond)=1, isInitial=1, last_1_WrapperStruct0_var_1_10=100, last_1_WrapperStruct0_var_1_13=5, last_1_WrapperStruct0_var_1_5=21/4] [L20] COND FALSE !(!cond) VAL [WrapperStruct0={4:0}, \old(cond)=1, isInitial=1, last_1_WrapperStruct0_var_1_10=100, last_1_WrapperStruct0_var_1_13=5, last_1_WrapperStruct0_var_1_5=21/4] [L85] RET assume_abort_if_not(WrapperStruct0.var_1_2 <= 1) VAL [WrapperStruct0={4:0}, isInitial=1, last_1_WrapperStruct0_var_1_10=100, last_1_WrapperStruct0_var_1_13=5, last_1_WrapperStruct0_var_1_5=21/4] [L86] WrapperStruct0.var_1_3 = __VERIFIER_nondet_double() [L87] EXPR WrapperStruct0.var_1_3 [L87] EXPR WrapperStruct0.var_1_3 >= 0.0F && WrapperStruct0.var_1_3 <= -1.0e-20F VAL [WrapperStruct0={4:0}, isInitial=1, last_1_WrapperStruct0_var_1_10=100, last_1_WrapperStruct0_var_1_13=5, last_1_WrapperStruct0_var_1_5=21/4] [L87] EXPR WrapperStruct0.var_1_3 >= 0.0F && WrapperStruct0.var_1_3 <= -1.0e-20F [L87] EXPR WrapperStruct0.var_1_3 [L87] EXPR WrapperStruct0.var_1_3 >= 0.0F && WrapperStruct0.var_1_3 <= -1.0e-20F VAL [WrapperStruct0={4:0}, isInitial=1, last_1_WrapperStruct0_var_1_10=100, last_1_WrapperStruct0_var_1_13=5, last_1_WrapperStruct0_var_1_5=21/4] [L87] EXPR (WrapperStruct0.var_1_3 >= 0.0F && WrapperStruct0.var_1_3 <= -1.0e-20F) || (WrapperStruct0.var_1_3 <= 9223372.036854765600e+12F && WrapperStruct0.var_1_3 >= 1.0e-20F ) VAL [WrapperStruct0={4:0}, isInitial=1, last_1_WrapperStruct0_var_1_10=100, last_1_WrapperStruct0_var_1_13=5, last_1_WrapperStruct0_var_1_5=21/4] [L87] EXPR (WrapperStruct0.var_1_3 >= 0.0F && WrapperStruct0.var_1_3 <= -1.0e-20F) || (WrapperStruct0.var_1_3 <= 9223372.036854765600e+12F && WrapperStruct0.var_1_3 >= 1.0e-20F ) VAL [WrapperStruct0={4:0}, isInitial=1, last_1_WrapperStruct0_var_1_10=100, last_1_WrapperStruct0_var_1_13=5, last_1_WrapperStruct0_var_1_5=21/4] [L87] CALL assume_abort_if_not((WrapperStruct0.var_1_3 >= 0.0F && WrapperStruct0.var_1_3 <= -1.0e-20F) || (WrapperStruct0.var_1_3 <= 9223372.036854765600e+12F && WrapperStruct0.var_1_3 >= 1.0e-20F )) VAL [WrapperStruct0={4:0}, \old(cond)=1, isInitial=1, last_1_WrapperStruct0_var_1_10=100, last_1_WrapperStruct0_var_1_13=5, last_1_WrapperStruct0_var_1_5=21/4] [L20] COND FALSE !(!cond) VAL [WrapperStruct0={4:0}, \old(cond)=1, isInitial=1, last_1_WrapperStruct0_var_1_10=100, last_1_WrapperStruct0_var_1_13=5, last_1_WrapperStruct0_var_1_5=21/4] [L87] RET assume_abort_if_not((WrapperStruct0.var_1_3 >= 0.0F && WrapperStruct0.var_1_3 <= -1.0e-20F) || (WrapperStruct0.var_1_3 <= 9223372.036854765600e+12F && WrapperStruct0.var_1_3 >= 1.0e-20F )) VAL [WrapperStruct0={4:0}, isInitial=1, last_1_WrapperStruct0_var_1_10=100, last_1_WrapperStruct0_var_1_13=5, last_1_WrapperStruct0_var_1_5=21/4] [L88] WrapperStruct0.var_1_4 = __VERIFIER_nondet_double() [L89] EXPR WrapperStruct0.var_1_4 [L89] EXPR WrapperStruct0.var_1_4 >= 0.0F && WrapperStruct0.var_1_4 <= -1.0e-20F VAL [WrapperStruct0={4:0}, isInitial=1, last_1_WrapperStruct0_var_1_10=100, last_1_WrapperStruct0_var_1_13=5, last_1_WrapperStruct0_var_1_5=21/4] [L89] EXPR WrapperStruct0.var_1_4 >= 0.0F && WrapperStruct0.var_1_4 <= -1.0e-20F [L89] EXPR WrapperStruct0.var_1_4 [L89] EXPR WrapperStruct0.var_1_4 >= 0.0F && WrapperStruct0.var_1_4 <= -1.0e-20F VAL [WrapperStruct0={4:0}, isInitial=1, last_1_WrapperStruct0_var_1_10=100, last_1_WrapperStruct0_var_1_13=5, last_1_WrapperStruct0_var_1_5=21/4] [L89] EXPR (WrapperStruct0.var_1_4 >= 0.0F && WrapperStruct0.var_1_4 <= -1.0e-20F) || (WrapperStruct0.var_1_4 <= 9223372.036854765600e+12F && WrapperStruct0.var_1_4 >= 1.0e-20F ) VAL [WrapperStruct0={4:0}, isInitial=1, last_1_WrapperStruct0_var_1_10=100, last_1_WrapperStruct0_var_1_13=5, last_1_WrapperStruct0_var_1_5=21/4] [L89] EXPR (WrapperStruct0.var_1_4 >= 0.0F && WrapperStruct0.var_1_4 <= -1.0e-20F) || (WrapperStruct0.var_1_4 <= 9223372.036854765600e+12F && WrapperStruct0.var_1_4 >= 1.0e-20F ) VAL [WrapperStruct0={4:0}, isInitial=1, last_1_WrapperStruct0_var_1_10=100, last_1_WrapperStruct0_var_1_13=5, last_1_WrapperStruct0_var_1_5=21/4] [L89] CALL assume_abort_if_not((WrapperStruct0.var_1_4 >= 0.0F && WrapperStruct0.var_1_4 <= -1.0e-20F) || (WrapperStruct0.var_1_4 <= 9223372.036854765600e+12F && WrapperStruct0.var_1_4 >= 1.0e-20F )) VAL [WrapperStruct0={4:0}, \old(cond)=1, isInitial=1, last_1_WrapperStruct0_var_1_10=100, last_1_WrapperStruct0_var_1_13=5, last_1_WrapperStruct0_var_1_5=21/4] [L20] COND FALSE !(!cond) VAL [WrapperStruct0={4:0}, \old(cond)=1, isInitial=1, last_1_WrapperStruct0_var_1_10=100, last_1_WrapperStruct0_var_1_13=5, last_1_WrapperStruct0_var_1_5=21/4] [L89] RET assume_abort_if_not((WrapperStruct0.var_1_4 >= 0.0F && WrapperStruct0.var_1_4 <= -1.0e-20F) || (WrapperStruct0.var_1_4 <= 9223372.036854765600e+12F && WrapperStruct0.var_1_4 >= 1.0e-20F )) VAL [WrapperStruct0={4:0}, isInitial=1, last_1_WrapperStruct0_var_1_10=100, last_1_WrapperStruct0_var_1_13=5, last_1_WrapperStruct0_var_1_5=21/4] [L90] WrapperStruct0.var_1_9 = __VERIFIER_nondet_uchar() [L91] EXPR WrapperStruct0.var_1_9 VAL [WrapperStruct0={4:0}, isInitial=1, last_1_WrapperStruct0_var_1_10=100, last_1_WrapperStruct0_var_1_13=5, last_1_WrapperStruct0_var_1_5=21/4] [L91] CALL assume_abort_if_not(WrapperStruct0.var_1_9 >= 0) VAL [WrapperStruct0={4:0}, \old(cond)=1, isInitial=1, last_1_WrapperStruct0_var_1_10=100, last_1_WrapperStruct0_var_1_13=5, last_1_WrapperStruct0_var_1_5=21/4] [L20] COND FALSE !(!cond) VAL [WrapperStruct0={4:0}, \old(cond)=1, isInitial=1, last_1_WrapperStruct0_var_1_10=100, last_1_WrapperStruct0_var_1_13=5, last_1_WrapperStruct0_var_1_5=21/4] [L91] RET assume_abort_if_not(WrapperStruct0.var_1_9 >= 0) VAL [WrapperStruct0={4:0}, isInitial=1, last_1_WrapperStruct0_var_1_10=100, last_1_WrapperStruct0_var_1_13=5, last_1_WrapperStruct0_var_1_5=21/4] [L92] EXPR WrapperStruct0.var_1_9 VAL [WrapperStruct0={4:0}, isInitial=1, last_1_WrapperStruct0_var_1_10=100, last_1_WrapperStruct0_var_1_13=5, last_1_WrapperStruct0_var_1_5=21/4] [L92] CALL assume_abort_if_not(WrapperStruct0.var_1_9 <= 1) VAL [WrapperStruct0={4:0}, \old(cond)=1, isInitial=1, last_1_WrapperStruct0_var_1_10=100, last_1_WrapperStruct0_var_1_13=5, last_1_WrapperStruct0_var_1_5=21/4] [L20] COND FALSE !(!cond) VAL [WrapperStruct0={4:0}, \old(cond)=1, isInitial=1, last_1_WrapperStruct0_var_1_10=100, last_1_WrapperStruct0_var_1_13=5, last_1_WrapperStruct0_var_1_5=21/4] [L92] RET assume_abort_if_not(WrapperStruct0.var_1_9 <= 1) VAL [WrapperStruct0={4:0}, isInitial=1, last_1_WrapperStruct0_var_1_10=100, last_1_WrapperStruct0_var_1_13=5, last_1_WrapperStruct0_var_1_5=21/4] [L93] WrapperStruct0.var_1_12 = __VERIFIER_nondet_uchar() [L94] EXPR WrapperStruct0.var_1_12 VAL [WrapperStruct0={4:0}, isInitial=1, last_1_WrapperStruct0_var_1_10=100, last_1_WrapperStruct0_var_1_13=5, last_1_WrapperStruct0_var_1_5=21/4] [L94] CALL assume_abort_if_not(WrapperStruct0.var_1_12 >= 0) VAL [WrapperStruct0={4:0}, \old(cond)=1, isInitial=1, last_1_WrapperStruct0_var_1_10=100, last_1_WrapperStruct0_var_1_13=5, last_1_WrapperStruct0_var_1_5=21/4] [L20] COND FALSE !(!cond) VAL [WrapperStruct0={4:0}, \old(cond)=1, isInitial=1, last_1_WrapperStruct0_var_1_10=100, last_1_WrapperStruct0_var_1_13=5, last_1_WrapperStruct0_var_1_5=21/4] [L94] RET assume_abort_if_not(WrapperStruct0.var_1_12 >= 0) VAL [WrapperStruct0={4:0}, isInitial=1, last_1_WrapperStruct0_var_1_10=100, last_1_WrapperStruct0_var_1_13=5, last_1_WrapperStruct0_var_1_5=21/4] [L95] EXPR WrapperStruct0.var_1_12 VAL [WrapperStruct0={4:0}, isInitial=1, last_1_WrapperStruct0_var_1_10=100, last_1_WrapperStruct0_var_1_13=5, last_1_WrapperStruct0_var_1_5=21/4] [L95] CALL assume_abort_if_not(WrapperStruct0.var_1_12 <= 254) VAL [WrapperStruct0={4:0}, \old(cond)=1, isInitial=1, last_1_WrapperStruct0_var_1_10=100, last_1_WrapperStruct0_var_1_13=5, last_1_WrapperStruct0_var_1_5=21/4] [L20] COND FALSE !(!cond) VAL [WrapperStruct0={4:0}, \old(cond)=1, isInitial=1, last_1_WrapperStruct0_var_1_10=100, last_1_WrapperStruct0_var_1_13=5, last_1_WrapperStruct0_var_1_5=21/4] [L95] RET assume_abort_if_not(WrapperStruct0.var_1_12 <= 254) VAL [WrapperStruct0={4:0}, isInitial=1, last_1_WrapperStruct0_var_1_10=100, last_1_WrapperStruct0_var_1_13=5, last_1_WrapperStruct0_var_1_5=21/4] [L111] RET updateVariables() [L112] CALL step() [L51] WrapperStruct0.var_1_9 VAL [WrapperStruct0={4:0}, isInitial=1, last_1_WrapperStruct0_var_1_10=100, last_1_WrapperStruct0_var_1_13=5, last_1_WrapperStruct0_var_1_5=21/4] [L51] COND FALSE !(WrapperStruct0.var_1_9) [L56] COND FALSE !((last_1_WrapperStruct0_var_1_13 + last_1_WrapperStruct0_var_1_13) < last_1_WrapperStruct0_var_1_13) VAL [WrapperStruct0={4:0}, isInitial=1, last_1_WrapperStruct0_var_1_10=100, last_1_WrapperStruct0_var_1_13=5, last_1_WrapperStruct0_var_1_5=21/4] [L61] EXPR WrapperStruct0.var_1_2 VAL [WrapperStruct0={4:0}, isInitial=1, last_1_WrapperStruct0_var_1_10=100, last_1_WrapperStruct0_var_1_13=5, last_1_WrapperStruct0_var_1_5=21/4] [L61] COND TRUE ! WrapperStruct0.var_1_2 [L62] EXPR WrapperStruct0.var_1_3 [L62] EXPR WrapperStruct0.var_1_4 [L62] WrapperStruct0.var_1_1 = (WrapperStruct0.var_1_3 - WrapperStruct0.var_1_4) [L66] EXPR WrapperStruct0.var_1_3 [L66] EXPR WrapperStruct0.var_1_4 [L66] EXPR WrapperStruct0.var_1_1 [L66] EXPR WrapperStruct0.var_1_1 VAL [WrapperStruct0={4:0}, isInitial=1, last_1_WrapperStruct0_var_1_10=100, last_1_WrapperStruct0_var_1_13=5, last_1_WrapperStruct0_var_1_5=21/4] [L66] COND FALSE !((WrapperStruct0.var_1_3 + (WrapperStruct0.var_1_4 + WrapperStruct0.var_1_1)) != WrapperStruct0.var_1_1) [L79] EXPR WrapperStruct0.var_1_3 [L79] WrapperStruct0.var_1_5 = WrapperStruct0.var_1_3 [L112] RET step() [L113] CALL, EXPR property() [L103] EXPR WrapperStruct0.var_1_2 VAL [WrapperStruct0={4:0}, isInitial=1, last_1_WrapperStruct0_var_1_10=100, last_1_WrapperStruct0_var_1_13=5, last_1_WrapperStruct0_var_1_5=21/4] [L103] EXPR (! WrapperStruct0.var_1_2) ? (WrapperStruct0.var_1_1 == ((double) (WrapperStruct0.var_1_3 - WrapperStruct0.var_1_4))) : (WrapperStruct0.var_1_1 == ((double) ((((16.2) < (WrapperStruct0.var_1_3)) ? (16.2) : (WrapperStruct0.var_1_3))))) [L103] EXPR WrapperStruct0.var_1_1 [L103] EXPR WrapperStruct0.var_1_3 [L103] EXPR WrapperStruct0.var_1_4 [L103] EXPR (! WrapperStruct0.var_1_2) ? (WrapperStruct0.var_1_1 == ((double) (WrapperStruct0.var_1_3 - WrapperStruct0.var_1_4))) : (WrapperStruct0.var_1_1 == ((double) ((((16.2) < (WrapperStruct0.var_1_3)) ? (16.2) : (WrapperStruct0.var_1_3))))) VAL [WrapperStruct0={4:0}, isInitial=1, last_1_WrapperStruct0_var_1_10=100, last_1_WrapperStruct0_var_1_13=5, last_1_WrapperStruct0_var_1_5=21/4] [L103] EXPR ((! WrapperStruct0.var_1_2) ? (WrapperStruct0.var_1_1 == ((double) (WrapperStruct0.var_1_3 - WrapperStruct0.var_1_4))) : (WrapperStruct0.var_1_1 == ((double) ((((16.2) < (WrapperStruct0.var_1_3)) ? (16.2) : (WrapperStruct0.var_1_3)))))) && (((WrapperStruct0.var_1_3 + (WrapperStruct0.var_1_4 + WrapperStruct0.var_1_1)) != WrapperStruct0.var_1_1) ? (WrapperStruct0.var_1_2 ? (((- WrapperStruct0.var_1_13) <= WrapperStruct0.var_1_10) ? (WrapperStruct0.var_1_9 ? (WrapperStruct0.var_1_5 == ((double) WrapperStruct0.var_1_4)) : 1) : (WrapperStruct0.var_1_5 == ((double) WrapperStruct0.var_1_3))) : (WrapperStruct0.var_1_5 == ((double) WrapperStruct0.var_1_3))) : (WrapperStruct0.var_1_5 == ((double) WrapperStruct0.var_1_3))) VAL [WrapperStruct0={4:0}, isInitial=1, last_1_WrapperStruct0_var_1_10=100, last_1_WrapperStruct0_var_1_13=5, last_1_WrapperStruct0_var_1_5=21/4] [L103] EXPR ((! WrapperStruct0.var_1_2) ? (WrapperStruct0.var_1_1 == ((double) (WrapperStruct0.var_1_3 - WrapperStruct0.var_1_4))) : (WrapperStruct0.var_1_1 == ((double) ((((16.2) < (WrapperStruct0.var_1_3)) ? (16.2) : (WrapperStruct0.var_1_3)))))) && (((WrapperStruct0.var_1_3 + (WrapperStruct0.var_1_4 + WrapperStruct0.var_1_1)) != WrapperStruct0.var_1_1) ? (WrapperStruct0.var_1_2 ? (((- WrapperStruct0.var_1_13) <= WrapperStruct0.var_1_10) ? (WrapperStruct0.var_1_9 ? (WrapperStruct0.var_1_5 == ((double) WrapperStruct0.var_1_4)) : 1) : (WrapperStruct0.var_1_5 == ((double) WrapperStruct0.var_1_3))) : (WrapperStruct0.var_1_5 == ((double) WrapperStruct0.var_1_3))) : (WrapperStruct0.var_1_5 == ((double) WrapperStruct0.var_1_3))) VAL [WrapperStruct0={4:0}, isInitial=1, last_1_WrapperStruct0_var_1_10=100, last_1_WrapperStruct0_var_1_13=5, last_1_WrapperStruct0_var_1_5=21/4] [L103] EXPR (((! WrapperStruct0.var_1_2) ? (WrapperStruct0.var_1_1 == ((double) (WrapperStruct0.var_1_3 - WrapperStruct0.var_1_4))) : (WrapperStruct0.var_1_1 == ((double) ((((16.2) < (WrapperStruct0.var_1_3)) ? (16.2) : (WrapperStruct0.var_1_3)))))) && (((WrapperStruct0.var_1_3 + (WrapperStruct0.var_1_4 + WrapperStruct0.var_1_1)) != WrapperStruct0.var_1_1) ? (WrapperStruct0.var_1_2 ? (((- WrapperStruct0.var_1_13) <= WrapperStruct0.var_1_10) ? (WrapperStruct0.var_1_9 ? (WrapperStruct0.var_1_5 == ((double) WrapperStruct0.var_1_4)) : 1) : (WrapperStruct0.var_1_5 == ((double) WrapperStruct0.var_1_3))) : (WrapperStruct0.var_1_5 == ((double) WrapperStruct0.var_1_3))) : (WrapperStruct0.var_1_5 == ((double) WrapperStruct0.var_1_3)))) && (((last_1_WrapperStruct0_var_1_13 + last_1_WrapperStruct0_var_1_13) < last_1_WrapperStruct0_var_1_13) ? ((last_1_WrapperStruct0_var_1_13 > last_1_WrapperStruct0_var_1_13) ? (WrapperStruct0.var_1_10 == ((unsigned char) WrapperStruct0.var_1_12)) : 1) : 1) VAL [WrapperStruct0={4:0}, isInitial=1, last_1_WrapperStruct0_var_1_10=100, last_1_WrapperStruct0_var_1_13=5, last_1_WrapperStruct0_var_1_5=21/4] [L103] EXPR (((! WrapperStruct0.var_1_2) ? (WrapperStruct0.var_1_1 == ((double) (WrapperStruct0.var_1_3 - WrapperStruct0.var_1_4))) : (WrapperStruct0.var_1_1 == ((double) ((((16.2) < (WrapperStruct0.var_1_3)) ? (16.2) : (WrapperStruct0.var_1_3)))))) && (((WrapperStruct0.var_1_3 + (WrapperStruct0.var_1_4 + WrapperStruct0.var_1_1)) != WrapperStruct0.var_1_1) ? (WrapperStruct0.var_1_2 ? (((- WrapperStruct0.var_1_13) <= WrapperStruct0.var_1_10) ? (WrapperStruct0.var_1_9 ? (WrapperStruct0.var_1_5 == ((double) WrapperStruct0.var_1_4)) : 1) : (WrapperStruct0.var_1_5 == ((double) WrapperStruct0.var_1_3))) : (WrapperStruct0.var_1_5 == ((double) WrapperStruct0.var_1_3))) : (WrapperStruct0.var_1_5 == ((double) WrapperStruct0.var_1_3)))) && (((last_1_WrapperStruct0_var_1_13 + last_1_WrapperStruct0_var_1_13) < last_1_WrapperStruct0_var_1_13) ? ((last_1_WrapperStruct0_var_1_13 > last_1_WrapperStruct0_var_1_13) ? (WrapperStruct0.var_1_10 == ((unsigned char) WrapperStruct0.var_1_12)) : 1) : 1) VAL [WrapperStruct0={4:0}, isInitial=1, last_1_WrapperStruct0_var_1_10=100, last_1_WrapperStruct0_var_1_13=5, last_1_WrapperStruct0_var_1_5=21/4] [L103] EXPR ((((! WrapperStruct0.var_1_2) ? (WrapperStruct0.var_1_1 == ((double) (WrapperStruct0.var_1_3 - WrapperStruct0.var_1_4))) : (WrapperStruct0.var_1_1 == ((double) ((((16.2) < (WrapperStruct0.var_1_3)) ? (16.2) : (WrapperStruct0.var_1_3)))))) && (((WrapperStruct0.var_1_3 + (WrapperStruct0.var_1_4 + WrapperStruct0.var_1_1)) != WrapperStruct0.var_1_1) ? (WrapperStruct0.var_1_2 ? (((- WrapperStruct0.var_1_13) <= WrapperStruct0.var_1_10) ? (WrapperStruct0.var_1_9 ? (WrapperStruct0.var_1_5 == ((double) WrapperStruct0.var_1_4)) : 1) : (WrapperStruct0.var_1_5 == ((double) WrapperStruct0.var_1_3))) : (WrapperStruct0.var_1_5 == ((double) WrapperStruct0.var_1_3))) : (WrapperStruct0.var_1_5 == ((double) WrapperStruct0.var_1_3)))) && (((last_1_WrapperStruct0_var_1_13 + last_1_WrapperStruct0_var_1_13) < last_1_WrapperStruct0_var_1_13) ? ((last_1_WrapperStruct0_var_1_13 > last_1_WrapperStruct0_var_1_13) ? (WrapperStruct0.var_1_10 == ((unsigned char) WrapperStruct0.var_1_12)) : 1) : 1)) && (WrapperStruct0.var_1_9 ? (((WrapperStruct0.var_1_4 * (WrapperStruct0.var_1_3 - 5.3)) <= last_1_WrapperStruct0_var_1_5) ? (WrapperStruct0.var_1_13 == ((unsigned short int) last_1_WrapperStruct0_var_1_10)) : 1) : 1) VAL [WrapperStruct0={4:0}, isInitial=1, last_1_WrapperStruct0_var_1_10=100, last_1_WrapperStruct0_var_1_13=5, last_1_WrapperStruct0_var_1_5=21/4] [L103] EXPR ((((! WrapperStruct0.var_1_2) ? (WrapperStruct0.var_1_1 == ((double) (WrapperStruct0.var_1_3 - WrapperStruct0.var_1_4))) : (WrapperStruct0.var_1_1 == ((double) ((((16.2) < (WrapperStruct0.var_1_3)) ? (16.2) : (WrapperStruct0.var_1_3)))))) && (((WrapperStruct0.var_1_3 + (WrapperStruct0.var_1_4 + WrapperStruct0.var_1_1)) != WrapperStruct0.var_1_1) ? (WrapperStruct0.var_1_2 ? (((- WrapperStruct0.var_1_13) <= WrapperStruct0.var_1_10) ? (WrapperStruct0.var_1_9 ? (WrapperStruct0.var_1_5 == ((double) WrapperStruct0.var_1_4)) : 1) : (WrapperStruct0.var_1_5 == ((double) WrapperStruct0.var_1_3))) : (WrapperStruct0.var_1_5 == ((double) WrapperStruct0.var_1_3))) : (WrapperStruct0.var_1_5 == ((double) WrapperStruct0.var_1_3)))) && (((last_1_WrapperStruct0_var_1_13 + last_1_WrapperStruct0_var_1_13) < last_1_WrapperStruct0_var_1_13) ? ((last_1_WrapperStruct0_var_1_13 > last_1_WrapperStruct0_var_1_13) ? (WrapperStruct0.var_1_10 == ((unsigned char) WrapperStruct0.var_1_12)) : 1) : 1)) && (WrapperStruct0.var_1_9 ? (((WrapperStruct0.var_1_4 * (WrapperStruct0.var_1_3 - 5.3)) <= last_1_WrapperStruct0_var_1_5) ? (WrapperStruct0.var_1_13 == ((unsigned short int) last_1_WrapperStruct0_var_1_10)) : 1) : 1) VAL [WrapperStruct0={4:0}, isInitial=1, last_1_WrapperStruct0_var_1_10=100, last_1_WrapperStruct0_var_1_13=5, last_1_WrapperStruct0_var_1_5=21/4] [L103-L104] return ((((! WrapperStruct0.var_1_2) ? (WrapperStruct0.var_1_1 == ((double) (WrapperStruct0.var_1_3 - WrapperStruct0.var_1_4))) : (WrapperStruct0.var_1_1 == ((double) ((((16.2) < (WrapperStruct0.var_1_3)) ? (16.2) : (WrapperStruct0.var_1_3)))))) && (((WrapperStruct0.var_1_3 + (WrapperStruct0.var_1_4 + WrapperStruct0.var_1_1)) != WrapperStruct0.var_1_1) ? (WrapperStruct0.var_1_2 ? (((- WrapperStruct0.var_1_13) <= WrapperStruct0.var_1_10) ? (WrapperStruct0.var_1_9 ? (WrapperStruct0.var_1_5 == ((double) WrapperStruct0.var_1_4)) : 1) : (WrapperStruct0.var_1_5 == ((double) WrapperStruct0.var_1_3))) : (WrapperStruct0.var_1_5 == ((double) WrapperStruct0.var_1_3))) : (WrapperStruct0.var_1_5 == ((double) WrapperStruct0.var_1_3)))) && (((last_1_WrapperStruct0_var_1_13 + last_1_WrapperStruct0_var_1_13) < last_1_WrapperStruct0_var_1_13) ? ((last_1_WrapperStruct0_var_1_13 > last_1_WrapperStruct0_var_1_13) ? (WrapperStruct0.var_1_10 == ((unsigned char) WrapperStruct0.var_1_12)) : 1) : 1)) && (WrapperStruct0.var_1_9 ? (((WrapperStruct0.var_1_4 * (WrapperStruct0.var_1_3 - 5.3)) <= last_1_WrapperStruct0_var_1_5) ? (WrapperStruct0.var_1_13 == ((unsigned short int) last_1_WrapperStruct0_var_1_10)) : 1) : 1) ; [L113] RET, EXPR property() [L113] CALL __VERIFIER_assert(property()) [L19] COND TRUE !(cond) VAL [WrapperStruct0={4:0}, isInitial=1, last_1_WrapperStruct0_var_1_10=100, last_1_WrapperStruct0_var_1_13=5, last_1_WrapperStruct0_var_1_5=21/4] [L19] reach_error() VAL [WrapperStruct0={4:0}, isInitial=1, last_1_WrapperStruct0_var_1_10=100, last_1_WrapperStruct0_var_1_13=5, last_1_WrapperStruct0_var_1_5=21/4] - StatisticsResult: Ultimate Automizer benchmark data CFG has 2 procedures, 84 locations, 1 error locations. Started 1 CEGAR loops. OverallTime: 0.8s, OverallIterations: 2, TraceHistogramMax: 8, 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, 108 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, 108 mSDtfsCounter, 0 mSolverCounterSat, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Unknown, PredicateUnifierStatistics: 0 DeclaredPredicates, 79 GetRequests, 79 SyntacticMatches, 0 SemanticMatches, 0 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s Time, 0.0s BasicInterpolantAutomatonTime, BiggestAbstraction: size=84occurred in iteration=0, InterpolantAutomatonStates: 2, traceCheckStatistics: No data available, InterpolantConsolidationStatistics: No data available, PathInvariantsStatistics: No data available, 0/0 InterpolantCoveringCapability, TotalInterpolationStatistics: No data available, 0.0s DumpTime, AutomataMinimizationStatistics: 0.0s AutomataMinimizationTime, 1 MinimizatonAttempts, 0 StatesRemovedByMinimization, 0 NontrivialMinimizations, HoareAnnotationStatistics: No data available, RefinementEngineStatistics: TRACE_CHECK: 0.1s SsaConstructionTime, 0.1s SatisfiabilityAnalysisTime, 0.1s InterpolantComputationTime, 234 NumberOfCodeBlocks, 234 NumberOfCodeBlocksAsserted, 3 NumberOfCheckSat, 154 ConstructedInterpolants, 0 QuantifiedInterpolants, 154 SizeOfPredicates, 0 NumberOfNonLiveVariables, 268 ConjunctsInSsa, 1 ConjunctsInUnsatCore, 2 InterpolantComputations, 1 PerfectInterpolantSequences, 210/224 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-03-04 01:35:16,334 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 (1)] Ended with exit code 0 Received shutdown request... --- End real Ultimate output --- Execution finished normally Using bit-precise analysis Retrying with bit-precise analysis ### Bit-precise run ### Calling Ultimate with: /root/.sdkman/candidates/java/21.0.5-tem/bin/java -Dosgi.configuration.area=/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/config -Xmx15G -Xms4m -jar /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/org.eclipse.equinox.launcher_1.6.800.v20240513-1750.jar -data @noDefault -ultimatedata /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data -tc /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/AutomizerReach.xml -i ../sv-benchmarks/c/hardness-nfm22/hardness_variablewrapping_wrapper-s_file-0.i -s /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Bitvector.epf --cacsl2boogietranslator.entry.function main --witnessprinter.witness.directory /storage/repos/ultimate/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 673f48eff2c9fa553be4e6ec558f63c53157e8de398373430e9065fe538627b8 --- Real Ultimate output --- This is Ultimate 0.3.0-?-798a7b3-m [2025-03-04 01:35:18,061 INFO L188 SettingsManager]: Resetting all preferences to default values... [2025-03-04 01:35:18,139 INFO L114 SettingsManager]: Loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Bitvector.epf [2025-03-04 01:35:18,146 WARN L101 SettingsManager]: Preference file contains the following unknown settings: [2025-03-04 01:35:18,146 WARN L103 SettingsManager]: * de.uni_freiburg.informatik.ultimate.core.Log level for class [2025-03-04 01:35:18,171 INFO L130 SettingsManager]: Preferences different from defaults after loading the file: [2025-03-04 01:35:18,172 INFO L151 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2025-03-04 01:35:18,172 INFO L153 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2025-03-04 01:35:18,173 INFO L151 SettingsManager]: Preferences of Boogie Preprocessor differ from their defaults: [2025-03-04 01:35:18,173 INFO L153 SettingsManager]: * Use memory slicer=true [2025-03-04 01:35:18,173 INFO L151 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2025-03-04 01:35:18,174 INFO L153 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2025-03-04 01:35:18,174 INFO L151 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2025-03-04 01:35:18,174 INFO L153 SettingsManager]: * Create parallel compositions if possible=false [2025-03-04 01:35:18,174 INFO L153 SettingsManager]: * Use SBE=true [2025-03-04 01:35:18,175 INFO L151 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2025-03-04 01:35:18,175 INFO L153 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2025-03-04 01:35:18,175 INFO L153 SettingsManager]: * sizeof long=4 [2025-03-04 01:35:18,175 INFO L153 SettingsManager]: * sizeof POINTER=4 [2025-03-04 01:35:18,175 INFO L153 SettingsManager]: * Check division by zero=IGNORE [2025-03-04 01:35:18,175 INFO L153 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2025-03-04 01:35:18,175 INFO L153 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2025-03-04 01:35:18,175 INFO L153 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2025-03-04 01:35:18,176 INFO L153 SettingsManager]: * Adapt memory model on pointer casts if necessary=true [2025-03-04 01:35:18,176 INFO L153 SettingsManager]: * Use bitvectors instead of ints=true [2025-03-04 01:35:18,176 INFO L153 SettingsManager]: * Memory model=HoenickeLindenmann_4ByteResolution [2025-03-04 01:35:18,176 INFO L153 SettingsManager]: * sizeof long double=12 [2025-03-04 01:35:18,176 INFO L153 SettingsManager]: * Check if freed pointer was valid=false [2025-03-04 01:35:18,176 INFO L153 SettingsManager]: * Behaviour of calls to undefined functions=OVERAPPROXIMATE_BEHAVIOUR [2025-03-04 01:35:18,176 INFO L153 SettingsManager]: * Use constant arrays=true [2025-03-04 01:35:18,176 INFO L151 SettingsManager]: Preferences of IcfgBuilder differ from their defaults: [2025-03-04 01:35:18,176 INFO L153 SettingsManager]: * Size of a code block=SequenceOfStatements [2025-03-04 01:35:18,177 INFO L153 SettingsManager]: * Only consider context switches at boundaries of atomic blocks=true [2025-03-04 01:35:18,177 INFO L153 SettingsManager]: * SMT solver=External_DefaultMode [2025-03-04 01:35:18,177 INFO L153 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-03-04 01:35:18,177 INFO L151 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2025-03-04 01:35:18,177 INFO L153 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2025-03-04 01:35:18,177 INFO L153 SettingsManager]: * Compute procedure contracts=false [2025-03-04 01:35:18,177 INFO L153 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopHeads [2025-03-04 01:35:18,177 INFO L153 SettingsManager]: * Trace refinement strategy=FOX [2025-03-04 01:35:18,177 INFO L153 SettingsManager]: * Command for external solver=cvc4 --incremental --print-success --lang smt [2025-03-04 01:35:18,177 INFO L153 SettingsManager]: * Apply one-shot large block encoding in concurrent analysis=false [2025-03-04 01:35:18,177 INFO L153 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2025-03-04 01:35:18,178 INFO L153 SettingsManager]: * Order on configurations for Petri net unfoldings=DBO [2025-03-04 01:35:18,178 INFO L153 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2025-03-04 01:35:18,178 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/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 -> 673f48eff2c9fa553be4e6ec558f63c53157e8de398373430e9065fe538627b8 [2025-03-04 01:35:18,410 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2025-03-04 01:35:18,417 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2025-03-04 01:35:18,420 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2025-03-04 01:35:18,421 INFO L270 PluginConnector]: Initializing CDTParser... [2025-03-04 01:35:18,421 INFO L274 PluginConnector]: CDTParser initialized [2025-03-04 01:35:18,422 INFO L431 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/hardness-nfm22/hardness_variablewrapping_wrapper-s_file-0.i [2025-03-04 01:35:19,525 INFO L533 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/d2b815fa9/222a0794f98047fdab8b06bbb87ff615/FLAGa19574b04 [2025-03-04 01:35:19,731 INFO L384 CDTParser]: Found 1 translation units. [2025-03-04 01:35:19,732 INFO L180 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/hardness-nfm22/hardness_variablewrapping_wrapper-s_file-0.i [2025-03-04 01:35:19,737 INFO L427 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/d2b815fa9/222a0794f98047fdab8b06bbb87ff615/FLAGa19574b04 [2025-03-04 01:35:20,103 INFO L435 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/d2b815fa9/222a0794f98047fdab8b06bbb87ff615 [2025-03-04 01:35:20,105 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2025-03-04 01:35:20,106 INFO L133 ToolchainWalker]: Walking toolchain with 6 elements. [2025-03-04 01:35:20,107 INFO L112 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2025-03-04 01:35:20,107 INFO L270 PluginConnector]: Initializing CACSL2BoogieTranslator... [2025-03-04 01:35:20,110 INFO L274 PluginConnector]: CACSL2BoogieTranslator initialized [2025-03-04 01:35:20,110 INFO L184 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 04.03 01:35:20" (1/1) ... [2025-03-04 01:35:20,111 INFO L204 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@399826a3 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 04.03 01:35:20, skipping insertion in model container [2025-03-04 01:35:20,111 INFO L184 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 04.03 01:35:20" (1/1) ... [2025-03-04 01:35:20,120 INFO L175 MainTranslator]: Built tables and reachable declarations [2025-03-04 01:35:20,214 WARN L250 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/hardness-nfm22/hardness_variablewrapping_wrapper-s_file-0.i[915,928] [2025-03-04 01:35:20,249 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-03-04 01:35:20,258 INFO L200 MainTranslator]: Completed pre-run [2025-03-04 01:35:20,266 WARN L250 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/hardness-nfm22/hardness_variablewrapping_wrapper-s_file-0.i[915,928] [2025-03-04 01:35:20,293 INFO L210 PostProcessor]: Analyzing one entry point: main [2025-03-04 01:35:20,310 INFO L204 MainTranslator]: Completed translation [2025-03-04 01:35:20,310 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 04.03 01:35:20 WrapperNode [2025-03-04 01:35:20,311 INFO L131 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2025-03-04 01:35:20,311 INFO L112 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2025-03-04 01:35:20,312 INFO L270 PluginConnector]: Initializing Boogie Procedure Inliner... [2025-03-04 01:35:20,312 INFO L274 PluginConnector]: Boogie Procedure Inliner initialized [2025-03-04 01:35:20,315 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 04.03 01:35:20" (1/1) ... [2025-03-04 01:35:20,325 INFO L184 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 04.03 01:35:20" (1/1) ... [2025-03-04 01:35:20,348 INFO L138 Inliner]: procedures = 33, calls = 111, calls flagged for inlining = 8, calls inlined = 8, statements flattened = 356 [2025-03-04 01:35:20,349 INFO L131 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2025-03-04 01:35:20,349 INFO L112 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2025-03-04 01:35:20,349 INFO L270 PluginConnector]: Initializing Boogie Preprocessor... [2025-03-04 01:35:20,349 INFO L274 PluginConnector]: Boogie Preprocessor initialized [2025-03-04 01:35:20,354 INFO L184 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 04.03 01:35:20" (1/1) ... [2025-03-04 01:35:20,355 INFO L184 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 04.03 01:35:20" (1/1) ... [2025-03-04 01:35:20,360 INFO L184 PluginConnector]: Executing the observer MemorySlicer from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 04.03 01:35:20" (1/1) ... [2025-03-04 01:35:20,385 INFO L175 MemorySlicer]: Split 91 memory accesses to 2 slices as follows [2, 89]. 98 percent of accesses are in the largest equivalence class. The 11 initializations are split as follows [2, 9]. The 13 writes are split as follows [0, 13]. [2025-03-04 01:35:20,385 INFO L184 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 04.03 01:35:20" (1/1) ... [2025-03-04 01:35:20,385 INFO L184 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 04.03 01:35:20" (1/1) ... [2025-03-04 01:35:20,402 INFO L184 PluginConnector]: Executing the observer ReplaceArrayAssignments from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 04.03 01:35:20" (1/1) ... [2025-03-04 01:35:20,407 INFO L184 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 04.03 01:35:20" (1/1) ... [2025-03-04 01:35:20,409 INFO L184 PluginConnector]: Executing the observer LTLStepAnnotator from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 04.03 01:35:20" (1/1) ... [2025-03-04 01:35:20,410 INFO L184 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 04.03 01:35:20" (1/1) ... [2025-03-04 01:35:20,416 INFO L131 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2025-03-04 01:35:20,417 INFO L112 PluginConnector]: ------------------------IcfgBuilder---------------------------- [2025-03-04 01:35:20,420 INFO L270 PluginConnector]: Initializing IcfgBuilder... [2025-03-04 01:35:20,420 INFO L274 PluginConnector]: IcfgBuilder initialized [2025-03-04 01:35:20,421 INFO L184 PluginConnector]: Executing the observer IcfgBuilderObserver from plugin IcfgBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 04.03 01:35:20" (1/1) ... [2025-03-04 01:35:20,425 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 [2025-03-04 01:35:20,434 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2025-03-04 01:35:20,445 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 (exit command is (exit), workingDir is null) [2025-03-04 01:35:20,448 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:4000 (1)] Waiting until timeout for monitored process [2025-03-04 01:35:20,467 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2025-03-04 01:35:20,467 INFO L130 BoogieDeclarations]: Found specification of procedure read~intFLOATTYPE8#0 [2025-03-04 01:35:20,467 INFO L130 BoogieDeclarations]: Found specification of procedure read~intFLOATTYPE8#1 [2025-03-04 01:35:20,468 INFO L130 BoogieDeclarations]: Found specification of procedure write~intFLOATTYPE8#0 [2025-03-04 01:35:20,468 INFO L130 BoogieDeclarations]: Found specification of procedure write~intFLOATTYPE8#1 [2025-03-04 01:35:20,468 INFO L130 BoogieDeclarations]: Found specification of procedure read~intINTTYPE1#0 [2025-03-04 01:35:20,468 INFO L130 BoogieDeclarations]: Found specification of procedure read~intINTTYPE1#1 [2025-03-04 01:35:20,468 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~intINTTYPE2#0 [2025-03-04 01:35:20,468 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~intINTTYPE2#1 [2025-03-04 01:35:20,468 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~intINTTYPE1#0 [2025-03-04 01:35:20,468 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~intINTTYPE1#1 [2025-03-04 01:35:20,468 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~intFLOATTYPE8#0 [2025-03-04 01:35:20,469 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~intFLOATTYPE8#1 [2025-03-04 01:35:20,469 INFO L130 BoogieDeclarations]: Found specification of procedure read~intINTTYPE2#0 [2025-03-04 01:35:20,469 INFO L130 BoogieDeclarations]: Found specification of procedure read~intINTTYPE2#1 [2025-03-04 01:35:20,469 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2025-03-04 01:35:20,469 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2025-03-04 01:35:20,469 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2025-03-04 01:35:20,469 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2025-03-04 01:35:20,469 INFO L130 BoogieDeclarations]: Found specification of procedure write~intINTTYPE1#0 [2025-03-04 01:35:20,469 INFO L130 BoogieDeclarations]: Found specification of procedure write~intINTTYPE1#1 [2025-03-04 01:35:20,469 INFO L130 BoogieDeclarations]: Found specification of procedure write~intINTTYPE2#0 [2025-03-04 01:35:20,470 INFO L130 BoogieDeclarations]: Found specification of procedure write~intINTTYPE2#1 [2025-03-04 01:35:20,572 INFO L256 CfgBuilder]: Building ICFG [2025-03-04 01:35:20,573 INFO L286 CfgBuilder]: Building CFG for each procedure with an implementation [2025-03-04 01:35:41,483 INFO L1325 $ProcedureCfgBuilder]: dead code at ProgramPoint L103: havoc property_#t~mem54#1;havoc property_#t~ite62#1;havoc property_#t~mem57#1;havoc property_#t~mem55#1;havoc property_#t~mem56#1;havoc property_#t~mem61#1;havoc property_#t~mem58#1;havoc property_#t~ite60#1;havoc property_#t~mem59#1;havoc property_#t~mem65#1;havoc property_#t~mem63#1;havoc property_#t~mem64#1;havoc property_#t~mem66#1;havoc property_#t~ite82#1;havoc property_#t~mem67#1;havoc property_#t~ite79#1;havoc property_#t~mem68#1;havoc property_#t~mem69#1;havoc property_#t~ite76#1;havoc property_#t~mem70#1;havoc property_#t~ite73#1;havoc property_#t~mem72#1;havoc property_#t~mem71#1;havoc property_#t~mem75#1;havoc property_#t~mem74#1;havoc property_#t~mem78#1;havoc property_#t~mem77#1;havoc property_#t~mem81#1;havoc property_#t~mem80#1;havoc property_#t~short83#1;havoc property_#t~ite87#1;havoc property_#t~ite86#1;havoc property_#t~mem85#1;havoc property_#t~mem84#1;havoc property_#t~short88#1;havoc property_#t~mem89#1;havoc property_#t~ite94#1;havoc property_#t~mem91#1;havoc property_#t~mem90#1;havoc property_#t~ite93#1;havoc property_#t~mem92#1;havoc property_#t~short95#1; [2025-03-04 01:35:41,501 INFO L? ?]: Removed 76 outVars from TransFormulas that were not future-live. [2025-03-04 01:35:41,502 INFO L307 CfgBuilder]: Performing block encoding [2025-03-04 01:35:41,513 INFO L331 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2025-03-04 01:35:41,513 INFO L336 CfgBuilder]: Removed 0 assume(true) statements. [2025-03-04 01:35:41,513 INFO L201 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 04.03 01:35:41 BoogieIcfgContainer [2025-03-04 01:35:41,513 INFO L131 PluginConnector]: ------------------------ END IcfgBuilder---------------------------- [2025-03-04 01:35:41,515 INFO L112 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2025-03-04 01:35:41,515 INFO L270 PluginConnector]: Initializing TraceAbstraction... [2025-03-04 01:35:41,519 INFO L274 PluginConnector]: TraceAbstraction initialized [2025-03-04 01:35:41,519 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 04.03 01:35:20" (1/3) ... [2025-03-04 01:35:41,519 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@6599e687 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 04.03 01:35:41, skipping insertion in model container [2025-03-04 01:35:41,519 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 04.03 01:35:20" (2/3) ... [2025-03-04 01:35:41,520 INFO L204 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@6599e687 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 04.03 01:35:41, skipping insertion in model container [2025-03-04 01:35:41,520 INFO L184 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.icfgbuilder CFG 04.03 01:35:41" (3/3) ... [2025-03-04 01:35:41,521 INFO L128 eAbstractionObserver]: Analyzing ICFG hardness_variablewrapping_wrapper-s_file-0.i [2025-03-04 01:35:41,546 INFO L216 ceAbstractionStarter]: Automizer settings: Hoare:LoopHeads NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2025-03-04 01:35:41,549 INFO L151 ceAbstractionStarter]: Applying trace abstraction to ICFG hardness_variablewrapping_wrapper-s_file-0.i that has 2 procedures, 84 locations, 1 initial locations, 1 loop locations, and 1 error locations. [2025-03-04 01:35:41,596 INFO L332 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2025-03-04 01:35:41,605 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;@49886deb, mLbeIndependenceSettings=[IndependenceType=SEMANTIC, AbstractionType=NONE, UseConditional=false, UseSemiCommutativity=true, Solver=Z3, SolverTimeout=1000ms] [2025-03-04 01:35:41,605 INFO L334 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2025-03-04 01:35:41,608 INFO L276 IsEmpty]: Start isEmpty. Operand has 84 states, 73 states have (on average 1.452054794520548) internal successors, (106), 74 states have internal predecessors, (106), 8 states have call successors, (8), 1 states have call predecessors, (8), 1 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2025-03-04 01:35:41,615 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 79 [2025-03-04 01:35:41,616 INFO L210 NwaCegarLoop]: Found error trace [2025-03-04 01:35:41,617 INFO L218 NwaCegarLoop]: trace histogram [8, 8, 8, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 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-03-04 01:35:41,617 INFO L396 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2025-03-04 01:35:41,621 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-03-04 01:35:41,621 INFO L85 PathProgramCache]: Analyzing trace with hash 405337358, now seen corresponding path program 1 times [2025-03-04 01:35:41,629 INFO L118 FreeRefinementEngine]: Executing refinement strategy FOX [2025-03-04 01:35:41,630 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1640937545] [2025-03-04 01:35:41,630 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-03-04 01:35:41,630 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-03-04 01:35:41,631 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2025-03-04 01:35:41,633 INFO L229 MonitoredProcess]: Starting monitored process 2 with /storage/repos/ultimate/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-03-04 01:35:41,635 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/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-03-04 01:35:41,725 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 78 statements into 1 equivalence classes. [2025-03-04 01:35:42,008 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 78 of 78 statements. [2025-03-04 01:35:42,009 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-04 01:35:42,009 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-03-04 01:35:42,024 INFO L256 TraceCheckSpWp]: Trace formula consists of 177 conjuncts, 1 conjuncts are in the unsatisfiable core [2025-03-04 01:35:42,028 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-03-04 01:35:42,047 INFO L134 CoverageAnalysis]: Checked inductivity of 112 backedges. 38 proven. 0 refuted. 0 times theorem prover too weak. 74 trivial. 0 not checked. [2025-03-04 01:35:42,047 INFO L308 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2025-03-04 01:35:42,047 INFO L136 FreeRefinementEngine]: Strategy FOX found an infeasible trace [2025-03-04 01:35:42,047 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1640937545] [2025-03-04 01:35:42,047 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1640937545] provided 1 perfect and 0 imperfect interpolant sequences [2025-03-04 01:35:42,048 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-03-04 01:35:42,048 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2025-03-04 01:35:42,049 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1606387974] [2025-03-04 01:35:42,049 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-03-04 01:35:42,054 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 2 states [2025-03-04 01:35:42,054 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy FOX [2025-03-04 01:35:42,069 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2025-03-04 01:35:42,069 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2025-03-04 01:35:42,073 INFO L87 Difference]: Start difference. First operand has 84 states, 73 states have (on average 1.452054794520548) internal successors, (106), 74 states have internal predecessors, (106), 8 states have call successors, (8), 1 states have call predecessors, (8), 1 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) Second operand has 2 states, 2 states have (on average 22.5) internal successors, (45), 2 states have internal predecessors, (45), 2 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (8), 2 states have call predecessors, (8), 2 states have call successors, (8) [2025-03-04 01:35:42,092 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2025-03-04 01:35:42,092 INFO L93 Difference]: Finished difference Result 159 states and 242 transitions. [2025-03-04 01:35:42,093 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2025-03-04 01:35:42,094 INFO L78 Accepts]: Start accepts. Automaton has has 2 states, 2 states have (on average 22.5) internal successors, (45), 2 states have internal predecessors, (45), 2 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (8), 2 states have call predecessors, (8), 2 states have call successors, (8) Word has length 78 [2025-03-04 01:35:42,094 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2025-03-04 01:35:42,097 INFO L225 Difference]: With dead ends: 159 [2025-03-04 01:35:42,098 INFO L226 Difference]: Without dead ends: 78 [2025-03-04 01:35:42,100 INFO L434 NwaCegarLoop]: 0 DeclaredPredicates, 77 GetRequests, 77 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-03-04 01:35:42,101 INFO L435 NwaCegarLoop]: 108 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, 108 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-03-04 01:35:42,102 INFO L436 NwaCegarLoop]: SdHoareTripleChecker [0 Valid, 108 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 0 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2025-03-04 01:35:42,111 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 78 states. [2025-03-04 01:35:42,123 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 78 to 78. [2025-03-04 01:35:42,124 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 78 states, 68 states have (on average 1.3529411764705883) internal successors, (92), 68 states have internal predecessors, (92), 8 states have call successors, (8), 1 states have call predecessors, (8), 1 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2025-03-04 01:35:42,127 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 78 states to 78 states and 108 transitions. [2025-03-04 01:35:42,130 INFO L78 Accepts]: Start accepts. Automaton has 78 states and 108 transitions. Word has length 78 [2025-03-04 01:35:42,130 INFO L84 Accepts]: Finished accepts. word is rejected. [2025-03-04 01:35:42,130 INFO L471 AbstractCegarLoop]: Abstraction has 78 states and 108 transitions. [2025-03-04 01:35:42,130 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 2 states, 2 states have (on average 22.5) internal successors, (45), 2 states have internal predecessors, (45), 2 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (8), 2 states have call predecessors, (8), 2 states have call successors, (8) [2025-03-04 01:35:42,130 INFO L276 IsEmpty]: Start isEmpty. Operand 78 states and 108 transitions. [2025-03-04 01:35:42,133 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 79 [2025-03-04 01:35:42,134 INFO L210 NwaCegarLoop]: Found error trace [2025-03-04 01:35:42,134 INFO L218 NwaCegarLoop]: trace histogram [8, 8, 8, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 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-03-04 01:35:42,150 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (2)] Forceful destruction successful, exit code 0 [2025-03-04 01:35:42,335 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 2 /storage/repos/ultimate/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-03-04 01:35:42,335 INFO L396 AbstractCegarLoop]: === Iteration 2 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2025-03-04 01:35:42,335 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-03-04 01:35:42,336 INFO L85 PathProgramCache]: Analyzing trace with hash 650052084, now seen corresponding path program 1 times [2025-03-04 01:35:42,336 INFO L118 FreeRefinementEngine]: Executing refinement strategy FOX [2025-03-04 01:35:42,336 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1855784651] [2025-03-04 01:35:42,336 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-03-04 01:35:42,336 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-03-04 01:35:42,336 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2025-03-04 01:35:42,339 INFO L229 MonitoredProcess]: Starting monitored process 3 with /storage/repos/ultimate/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-03-04 01:35:42,340 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/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-03-04 01:35:42,399 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 78 statements into 1 equivalence classes. [2025-03-04 01:35:42,682 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 78 of 78 statements. [2025-03-04 01:35:42,682 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-04 01:35:42,682 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-03-04 01:35:42,697 INFO L256 TraceCheckSpWp]: Trace formula consists of 177 conjuncts, 8 conjuncts are in the unsatisfiable core [2025-03-04 01:35:42,702 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-03-04 01:35:43,045 INFO L349 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2025-03-04 01:35:43,046 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 173 treesize of output 65 [2025-03-04 01:35:43,148 INFO L134 CoverageAnalysis]: Checked inductivity of 112 backedges. 48 proven. 0 refuted. 0 times theorem prover too weak. 64 trivial. 0 not checked. [2025-03-04 01:35:43,149 INFO L308 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2025-03-04 01:35:43,149 INFO L136 FreeRefinementEngine]: Strategy FOX found an infeasible trace [2025-03-04 01:35:43,149 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1855784651] [2025-03-04 01:35:43,149 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1855784651] provided 1 perfect and 0 imperfect interpolant sequences [2025-03-04 01:35:43,149 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-03-04 01:35:43,149 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2025-03-04 01:35:43,149 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [371994334] [2025-03-04 01:35:43,149 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-03-04 01:35:43,150 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2025-03-04 01:35:43,150 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy FOX [2025-03-04 01:35:43,150 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2025-03-04 01:35:43,151 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=10, Invalid=20, Unknown=0, NotChecked=0, Total=30 [2025-03-04 01:35:43,151 INFO L87 Difference]: Start difference. First operand 78 states and 108 transitions. Second operand has 6 states, 6 states have (on average 7.333333333333333) internal successors, (44), 5 states have internal predecessors, (44), 2 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (8), 2 states have call predecessors, (8), 2 states have call successors, (8) [2025-03-04 01:35:47,453 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 3.76s for a HTC check with result INVALID. Formula has sorts [Array, Bool, FloatingPoint, RoundingMode, Real, BitVec], hasArrays=true, hasNonlinArith=false, quantifiers [] [2025-03-04 01:35:51,696 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 4.10s for a HTC check with result UNKNOWN. Formula has sorts [Bool, FloatingPoint, RoundingMode, Real], hasArrays=false, hasNonlinArith=false, quantifiers [] [2025-03-04 01:35:55,338 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 3.64s for a HTC check with result INVALID. Formula has sorts [Bool, FloatingPoint, RoundingMode, Real], hasArrays=false, hasNonlinArith=false, quantifiers [] [2025-03-04 01:36:02,884 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 3.20s for a HTC check with result INVALID. Formula has sorts [Array, Bool, FloatingPoint, RoundingMode, Real, BitVec], hasArrays=true, hasNonlinArith=false, quantifiers [] [2025-03-04 01:36:06,587 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 3.57s for a HTC check with result INVALID. Formula has sorts [Bool, FloatingPoint, RoundingMode, Real, BitVec], hasArrays=false, hasNonlinArith=false, quantifiers [] [2025-03-04 01:36:08,776 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.19s for a HTC check with result INVALID. Formula has sorts [Bool, FloatingPoint, RoundingMode, Real, BitVec], hasArrays=false, hasNonlinArith=false, quantifiers [] [2025-03-04 01:36:12,316 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 3.54s for a HTC check with result INVALID. Formula has sorts [Bool, FloatingPoint, RoundingMode, Real, BitVec], hasArrays=false, hasNonlinArith=false, quantifiers [] [2025-03-04 01:36:12,364 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2025-03-04 01:36:12,364 INFO L93 Difference]: Finished difference Result 154 states and 214 transitions. [2025-03-04 01:36:12,397 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2025-03-04 01:36:12,397 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 7.333333333333333) internal successors, (44), 5 states have internal predecessors, (44), 2 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (8), 2 states have call predecessors, (8), 2 states have call successors, (8) Word has length 78 [2025-03-04 01:36:12,397 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2025-03-04 01:36:12,398 INFO L225 Difference]: With dead ends: 154 [2025-03-04 01:36:12,398 INFO L226 Difference]: Without dead ends: 79 [2025-03-04 01:36:12,400 INFO L434 NwaCegarLoop]: 0 DeclaredPredicates, 80 GetRequests, 73 SyntacticMatches, 0 SemanticMatches, 7 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 4 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=24, Invalid=48, Unknown=0, NotChecked=0, Total=72 [2025-03-04 01:36:12,400 INFO L435 NwaCegarLoop]: 83 mSDtfsCounter, 94 mSDsluCounter, 201 mSDsCounter, 0 mSdLazyCounter, 141 mSolverCounterSat, 1 mSolverCounterUnsat, 1 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 28.8s Time, 0 mProtectedPredicate, 0 mProtectedAction, 94 SdHoareTripleChecker+Valid, 284 SdHoareTripleChecker+Invalid, 143 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 1 IncrementalHoareTripleChecker+Valid, 141 IncrementalHoareTripleChecker+Invalid, 1 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 29.1s IncrementalHoareTripleChecker+Time [2025-03-04 01:36:12,400 INFO L436 NwaCegarLoop]: SdHoareTripleChecker [94 Valid, 284 Invalid, 143 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [1 Valid, 141 Invalid, 1 Unknown, 0 Unchecked, 29.1s Time] [2025-03-04 01:36:12,401 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 79 states. [2025-03-04 01:36:12,405 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 79 to 78. [2025-03-04 01:36:12,406 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 78 states, 68 states have (on average 1.338235294117647) internal successors, (91), 68 states have internal predecessors, (91), 8 states have call successors, (8), 1 states have call predecessors, (8), 1 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2025-03-04 01:36:12,406 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 78 states to 78 states and 107 transitions. [2025-03-04 01:36:12,407 INFO L78 Accepts]: Start accepts. Automaton has 78 states and 107 transitions. Word has length 78 [2025-03-04 01:36:12,407 INFO L84 Accepts]: Finished accepts. word is rejected. [2025-03-04 01:36:12,407 INFO L471 AbstractCegarLoop]: Abstraction has 78 states and 107 transitions. [2025-03-04 01:36:12,407 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 7.333333333333333) internal successors, (44), 5 states have internal predecessors, (44), 2 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (8), 2 states have call predecessors, (8), 2 states have call successors, (8) [2025-03-04 01:36:12,408 INFO L276 IsEmpty]: Start isEmpty. Operand 78 states and 107 transitions. [2025-03-04 01:36:12,409 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 81 [2025-03-04 01:36:12,409 INFO L210 NwaCegarLoop]: Found error trace [2025-03-04 01:36:12,409 INFO L218 NwaCegarLoop]: trace histogram [8, 8, 8, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 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-03-04 01:36:12,425 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -theory.fp.to_bv_overflow_mode=1 -theory.fp.minmax_zero_mode=4 -theory.bv.div_by_zero_mode=1 -unsat_core_generation=3 (3)] Forceful destruction successful, exit code 0 [2025-03-04 01:36:12,610 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 3 /storage/repos/ultimate/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-03-04 01:36:12,611 INFO L396 AbstractCegarLoop]: === Iteration 3 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2025-03-04 01:36:12,611 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-03-04 01:36:12,611 INFO L85 PathProgramCache]: Analyzing trace with hash 925091922, now seen corresponding path program 1 times [2025-03-04 01:36:12,612 INFO L118 FreeRefinementEngine]: Executing refinement strategy FOX [2025-03-04 01:36:12,612 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [145097403] [2025-03-04 01:36:12,612 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-03-04 01:36:12,612 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-03-04 01:36:12,612 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2025-03-04 01:36:12,614 INFO L229 MonitoredProcess]: Starting monitored process 4 with /storage/repos/ultimate/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-03-04 01:36:12,616 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/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-03-04 01:36:12,671 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 80 statements into 1 equivalence classes. [2025-03-04 01:36:12,976 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 80 of 80 statements. [2025-03-04 01:36:12,976 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-04 01:36:12,976 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-03-04 01:36:12,992 INFO L256 TraceCheckSpWp]: Trace formula consists of 183 conjuncts, 8 conjuncts are in the unsatisfiable core [2025-03-04 01:36:12,994 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-03-04 01:36:13,389 INFO L349 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2025-03-04 01:36:13,389 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 0 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 173 treesize of output 65 [2025-03-04 01:36:13,486 INFO L134 CoverageAnalysis]: Checked inductivity of 112 backedges. 60 proven. 0 refuted. 0 times theorem prover too weak. 52 trivial. 0 not checked. [2025-03-04 01:36:13,486 INFO L308 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2025-03-04 01:36:13,486 INFO L136 FreeRefinementEngine]: Strategy FOX found an infeasible trace [2025-03-04 01:36:13,486 INFO L334 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [145097403] [2025-03-04 01:36:13,486 INFO L158 FreeRefinementEngine]: IpTcStrategyModuleMathsat [145097403] provided 1 perfect and 0 imperfect interpolant sequences [2025-03-04 01:36:13,486 INFO L185 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2025-03-04 01:36:13,487 INFO L198 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2025-03-04 01:36:13,487 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2130188805] [2025-03-04 01:36:13,487 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2025-03-04 01:36:13,487 INFO L548 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2025-03-04 01:36:13,487 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy FOX [2025-03-04 01:36:13,488 INFO L144 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2025-03-04 01:36:13,488 INFO L146 InterpolantAutomaton]: CoverageRelationStatistics Valid=10, Invalid=20, Unknown=0, NotChecked=0, Total=30 [2025-03-04 01:36:13,488 INFO L87 Difference]: Start difference. First operand 78 states and 107 transitions. Second operand has 6 states, 6 states have (on average 7.666666666666667) internal successors, (46), 5 states have internal predecessors, (46), 2 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (8), 2 states have call predecessors, (8), 2 states have call successors, (8) [2025-03-04 01:36:18,069 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 4.07s for a HTC check with result UNKNOWN. Formula has sorts [Array, Bool, FloatingPoint, RoundingMode, Real, BitVec], hasArrays=true, hasNonlinArith=false, quantifiers [] [2025-03-04 01:36:22,072 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 4.00s for a HTC check with result UNKNOWN. Formula has sorts [Array, Bool, FloatingPoint, RoundingMode, Real, BitVec], hasArrays=true, hasNonlinArith=false, quantifiers [] [2025-03-04 01:36:24,497 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 2.43s for a HTC check with result INVALID. Formula has sorts [Array, Bool, FloatingPoint, RoundingMode, Real, BitVec], hasArrays=true, hasNonlinArith=false, quantifiers [] [2025-03-04 01:36:28,651 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 4.10s for a HTC check with result UNKNOWN. Formula has sorts [Bool, FloatingPoint, RoundingMode, Real], hasArrays=false, hasNonlinArith=false, quantifiers [] [2025-03-04 01:36:32,656 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 4.00s for a HTC check with result UNKNOWN. Formula has sorts [Bool, FloatingPoint, RoundingMode, Real], hasArrays=false, hasNonlinArith=false, quantifiers [] [2025-03-04 01:36:33,964 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 1.31s for a HTC check with result INVALID. Formula has sorts [Bool, FloatingPoint, RoundingMode, Real], hasArrays=false, hasNonlinArith=false, quantifiers [] [2025-03-04 01:36:42,149 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 3.86s for a HTC check with result INVALID. Formula has sorts [Array, Bool, FloatingPoint, RoundingMode, Real, BitVec], hasArrays=true, hasNonlinArith=false, quantifiers [] [2025-03-04 01:36:45,678 WARN L539 Checker$ProtectedHtc]: IncrementalHoareTripleChecker took 3.41s for a HTC check with result INVALID. Formula has sorts [Bool, FloatingPoint, RoundingMode, Real, BitVec], hasArrays=false, hasNonlinArith=false, quantifiers [] [2025-03-04 01:36:45,804 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2025-03-04 01:36:45,804 INFO L93 Difference]: Finished difference Result 154 states and 212 transitions. [2025-03-04 01:36:45,834 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2025-03-04 01:36:45,835 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 7.666666666666667) internal successors, (46), 5 states have internal predecessors, (46), 2 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (8), 2 states have call predecessors, (8), 2 states have call successors, (8) Word has length 80 [2025-03-04 01:36:45,835 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2025-03-04 01:36:45,835 INFO L225 Difference]: With dead ends: 154 [2025-03-04 01:36:45,835 INFO L226 Difference]: Without dead ends: 79 [2025-03-04 01:36:45,836 INFO L434 NwaCegarLoop]: 0 DeclaredPredicates, 82 GetRequests, 75 SyntacticMatches, 0 SemanticMatches, 7 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 4 ImplicationChecksByTransitivity, 0.3s TimeCoverageRelationStatistics Valid=24, Invalid=48, Unknown=0, NotChecked=0, Total=72 [2025-03-04 01:36:45,836 INFO L435 NwaCegarLoop]: 82 mSDtfsCounter, 85 mSDsluCounter, 196 mSDsCounter, 0 mSdLazyCounter, 140 mSolverCounterSat, 1 mSolverCounterUnsat, 4 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 31.9s Time, 0 mProtectedPredicate, 0 mProtectedAction, 85 SdHoareTripleChecker+Valid, 278 SdHoareTripleChecker+Invalid, 145 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 1 IncrementalHoareTripleChecker+Valid, 140 IncrementalHoareTripleChecker+Invalid, 4 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 32.2s IncrementalHoareTripleChecker+Time [2025-03-04 01:36:45,836 INFO L436 NwaCegarLoop]: SdHoareTripleChecker [85 Valid, 278 Invalid, 145 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [1 Valid, 140 Invalid, 4 Unknown, 0 Unchecked, 32.2s Time] [2025-03-04 01:36:45,837 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 79 states. [2025-03-04 01:36:45,842 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 79 to 78. [2025-03-04 01:36:45,842 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 78 states, 68 states have (on average 1.3235294117647058) internal successors, (90), 68 states have internal predecessors, (90), 8 states have call successors, (8), 1 states have call predecessors, (8), 1 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2025-03-04 01:36:45,842 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 78 states to 78 states and 106 transitions. [2025-03-04 01:36:45,842 INFO L78 Accepts]: Start accepts. Automaton has 78 states and 106 transitions. Word has length 80 [2025-03-04 01:36:45,843 INFO L84 Accepts]: Finished accepts. word is rejected. [2025-03-04 01:36:45,843 INFO L471 AbstractCegarLoop]: Abstraction has 78 states and 106 transitions. [2025-03-04 01:36:45,843 INFO L472 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 7.666666666666667) internal successors, (46), 5 states have internal predecessors, (46), 2 states have call successors, (8), 2 states have call predecessors, (8), 2 states have return successors, (8), 2 states have call predecessors, (8), 2 states have call successors, (8) [2025-03-04 01:36:45,843 INFO L276 IsEmpty]: Start isEmpty. Operand 78 states and 106 transitions. [2025-03-04 01:36:45,844 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 83 [2025-03-04 01:36:45,844 INFO L210 NwaCegarLoop]: Found error trace [2025-03-04 01:36:45,844 INFO L218 NwaCegarLoop]: trace histogram [8, 8, 8, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 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-03-04 01:36:45,860 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/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)] Ended with exit code 0 [2025-03-04 01:36:46,045 WARN L453 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 4 /storage/repos/ultimate/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-03-04 01:36:46,045 INFO L396 AbstractCegarLoop]: === Iteration 4 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2025-03-04 01:36:46,046 INFO L157 PredicateUnifier]: Initialized classic predicate unifier [2025-03-04 01:36:46,046 INFO L85 PathProgramCache]: Analyzing trace with hash -2105115020, now seen corresponding path program 1 times [2025-03-04 01:36:46,046 INFO L118 FreeRefinementEngine]: Executing refinement strategy FOX [2025-03-04 01:36:46,046 INFO L334 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1813023742] [2025-03-04 01:36:46,046 INFO L97 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2025-03-04 01:36:46,046 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-03-04 01:36:46,047 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2025-03-04 01:36:46,049 INFO L229 MonitoredProcess]: Starting monitored process 5 with /storage/repos/ultimate/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-03-04 01:36:46,050 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/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 (5)] Waiting until timeout for monitored process [2025-03-04 01:36:46,103 INFO L108 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY partitioned 82 statements into 1 equivalence classes. [2025-03-04 01:36:48,487 INFO L111 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) and asserted 82 of 82 statements. [2025-03-04 01:36:48,487 INFO L114 AnnotateAndAsserter]: Assert order NOT_INCREMENTALLY issued 1 check-sat command(s) [2025-03-04 01:36:48,487 INFO L115 AnnotateAndAsserter]: Conjunction of SSA is unsat [2025-03-04 01:36:48,509 INFO L256 TraceCheckSpWp]: Trace formula consists of 189 conjuncts, 42 conjuncts are in the unsatisfiable core [2025-03-04 01:36:48,517 INFO L279 TraceCheckSpWp]: Computing forward predicates... [2025-03-04 01:36:48,620 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 0 new quantified variables, introduced 0 case distinctions, treesize of input 8 treesize of output 1 [2025-03-04 01:36:49,989 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 2 select indices, 2 select index equivalence classes, 6 disjoint index pairs (out of 1 index pairs), introduced 2 new quantified variables, introduced 0 case distinctions, treesize of input 136 treesize of output 67 [2025-03-04 01:36:54,069 INFO L349 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2025-03-04 01:36:54,069 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 4 select indices, 4 select index equivalence classes, 0 disjoint index pairs (out of 6 index pairs), introduced 4 new quantified variables, introduced 6 case distinctions, treesize of input 245 treesize of output 127 [2025-03-04 01:36:55,595 INFO L349 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2025-03-04 01:36:55,595 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 5 select indices, 5 select index equivalence classes, 0 disjoint index pairs (out of 10 index pairs), introduced 5 new quantified variables, introduced 10 case distinctions, treesize of input 260 treesize of output 130 [2025-03-04 01:36:57,536 INFO L349 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2025-03-04 01:36:57,536 INFO L378 Elim1Store]: Elim1 eliminated variable of array dimension 2, 1 stores, 5 select indices, 5 select index equivalence classes, 0 disjoint index pairs (out of 10 index pairs), introduced 5 new quantified variables, introduced 10 case distinctions, treesize of input 367 treesize of output 184