./Ultimate.py --spec ../sv-benchmarks/c/properties/unreach-call.prp --file ../sv-benchmarks/c/array-patterns/array27_pattern.c --full-output -ea --architecture 32bit -------------------------------------------------------------------------------- Checking for ERROR reachability Using default analysis Version 03d7b7b3 Calling Ultimate with: /usr/bin/java -Dosgi.configuration.area=/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/config -Xmx15G -Xms4m -ea -jar /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/org.eclipse.equinox.launcher_1.5.800.v20200727-1323.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/array-patterns/array27_pattern.c -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.graphml --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 8e2a4cc1bd1815c470836bbbcc9d3775eac69b651b7231d974ae63a065851dd1 --- Real Ultimate output --- This is Ultimate 0.2.2-dev-03d7b7b [2022-02-20 14:24:08,103 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-02-20 14:24:08,106 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-02-20 14:24:08,135 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-02-20 14:24:08,136 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-02-20 14:24:08,138 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-02-20 14:24:08,141 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-02-20 14:24:08,144 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-02-20 14:24:08,145 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-02-20 14:24:08,149 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-02-20 14:24:08,149 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-02-20 14:24:08,150 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-02-20 14:24:08,150 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-02-20 14:24:08,152 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-02-20 14:24:08,153 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-02-20 14:24:08,154 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-02-20 14:24:08,155 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-02-20 14:24:08,155 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-02-20 14:24:08,158 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-02-20 14:24:08,162 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-02-20 14:24:08,163 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-02-20 14:24:08,164 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-02-20 14:24:08,165 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-02-20 14:24:08,166 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-02-20 14:24:08,170 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-02-20 14:24:08,171 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-02-20 14:24:08,171 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-02-20 14:24:08,172 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-02-20 14:24:08,172 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-02-20 14:24:08,173 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-02-20 14:24:08,173 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-02-20 14:24:08,174 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-02-20 14:24:08,175 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-02-20 14:24:08,176 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-02-20 14:24:08,177 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-02-20 14:24:08,177 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-02-20 14:24:08,178 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-02-20 14:24:08,178 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-02-20 14:24:08,178 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-02-20 14:24:08,179 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-02-20 14:24:08,179 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-02-20 14:24:08,180 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Default.epf [2022-02-20 14:24:08,202 INFO L113 SettingsManager]: Loading preferences was successful [2022-02-20 14:24:08,203 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-02-20 14:24:08,203 INFO L136 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2022-02-20 14:24:08,203 INFO L138 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2022-02-20 14:24:08,204 INFO L136 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2022-02-20 14:24:08,204 INFO L138 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2022-02-20 14:24:08,205 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-02-20 14:24:08,205 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-02-20 14:24:08,205 INFO L138 SettingsManager]: * Use SBE=true [2022-02-20 14:24:08,205 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-02-20 14:24:08,206 INFO L138 SettingsManager]: * sizeof long=4 [2022-02-20 14:24:08,206 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-02-20 14:24:08,206 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-02-20 14:24:08,206 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-02-20 14:24:08,207 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-02-20 14:24:08,207 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-02-20 14:24:08,207 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-02-20 14:24:08,207 INFO L138 SettingsManager]: * sizeof long double=12 [2022-02-20 14:24:08,207 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-02-20 14:24:08,207 INFO L138 SettingsManager]: * Use constant arrays=true [2022-02-20 14:24:08,207 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-02-20 14:24:08,208 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-02-20 14:24:08,208 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-02-20 14:24:08,208 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-02-20 14:24:08,208 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-02-20 14:24:08,208 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-02-20 14:24:08,208 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2022-02-20 14:24:08,209 INFO L138 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2022-02-20 14:24:08,209 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-02-20 14:24:08,210 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2022-02-20 14:24:08,210 INFO L138 SettingsManager]: * Large block encoding in concurrent analysis=OFF [2022-02-20 14:24:08,210 INFO L138 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2022-02-20 14:24:08,210 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-02-20 14:24:08,210 INFO L138 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode WARNING: An illegal reflective access operation has occurred WARNING: Illegal reflective access by com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 (file:/storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/plugins/com.sun.xml.bind_2.2.0.v201505121915.jar) to method java.lang.ClassLoader.defineClass(java.lang.String,byte[],int,int) WARNING: Please consider reporting this to the maintainers of com.sun.xml.bind.v2.runtime.reflect.opt.Injector$1 WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release 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.graphml 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 -> 8e2a4cc1bd1815c470836bbbcc9d3775eac69b651b7231d974ae63a065851dd1 [2022-02-20 14:24:08,414 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-02-20 14:24:08,435 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-02-20 14:24:08,437 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-02-20 14:24:08,438 INFO L271 PluginConnector]: Initializing CDTParser... [2022-02-20 14:24:08,438 INFO L275 PluginConnector]: CDTParser initialized [2022-02-20 14:24:08,439 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/array-patterns/array27_pattern.c [2022-02-20 14:24:08,491 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/e92d973dc/f963a67a8dc0496fabe970ccec3ffc68/FLAGcfbbcc127 [2022-02-20 14:24:08,857 INFO L306 CDTParser]: Found 1 translation units. [2022-02-20 14:24:08,858 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/array-patterns/array27_pattern.c [2022-02-20 14:24:08,863 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/e92d973dc/f963a67a8dc0496fabe970ccec3ffc68/FLAGcfbbcc127 [2022-02-20 14:24:08,873 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/e92d973dc/f963a67a8dc0496fabe970ccec3ffc68 [2022-02-20 14:24:08,874 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-02-20 14:24:08,875 INFO L131 ToolchainWalker]: Walking toolchain with 6 elements. [2022-02-20 14:24:08,876 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-02-20 14:24:08,877 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-02-20 14:24:08,879 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-02-20 14:24:08,880 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 02:24:08" (1/1) ... [2022-02-20 14:24:08,880 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@471ffab3 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 02:24:08, skipping insertion in model container [2022-02-20 14:24:08,881 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 02:24:08" (1/1) ... [2022-02-20 14:24:08,885 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-02-20 14:24:08,897 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-02-20 14:24:09,020 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/array-patterns/array27_pattern.c[1253,1266] [2022-02-20 14:24:09,046 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-20 14:24:09,056 INFO L203 MainTranslator]: Completed pre-run [2022-02-20 14:24:09,072 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/array-patterns/array27_pattern.c[1253,1266] [2022-02-20 14:24:09,081 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-20 14:24:09,090 INFO L208 MainTranslator]: Completed translation [2022-02-20 14:24:09,091 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 02:24:09 WrapperNode [2022-02-20 14:24:09,091 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-02-20 14:24:09,092 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2022-02-20 14:24:09,093 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2022-02-20 14:24:09,093 INFO L275 PluginConnector]: Boogie Procedure Inliner initialized [2022-02-20 14:24:09,097 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 02:24:09" (1/1) ... [2022-02-20 14:24:09,103 INFO L185 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 02:24:09" (1/1) ... [2022-02-20 14:24:09,119 INFO L137 Inliner]: procedures = 16, calls = 15, calls flagged for inlining = 4, calls inlined = 4, statements flattened = 72 [2022-02-20 14:24:09,126 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2022-02-20 14:24:09,127 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-02-20 14:24:09,127 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-02-20 14:24:09,127 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-02-20 14:24:09,132 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 02:24:09" (1/1) ... [2022-02-20 14:24:09,133 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 02:24:09" (1/1) ... [2022-02-20 14:24:09,134 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 02:24:09" (1/1) ... [2022-02-20 14:24:09,135 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 02:24:09" (1/1) ... [2022-02-20 14:24:09,139 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 02:24:09" (1/1) ... [2022-02-20 14:24:09,149 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 02:24:09" (1/1) ... [2022-02-20 14:24:09,152 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 02:24:09" (1/1) ... [2022-02-20 14:24:09,160 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-02-20 14:24:09,161 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-02-20 14:24:09,163 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-02-20 14:24:09,163 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-02-20 14:24:09,165 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 02:24:09" (1/1) ... [2022-02-20 14:24:09,170 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-02-20 14:24:09,178 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 14:24:09,201 INFO L229 MonitoredProcess]: Starting monitored process 1 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (exit command is (exit), workingDir is null) [2022-02-20 14:24:09,211 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Waiting until timeout for monitored process [2022-02-20 14:24:09,231 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-02-20 14:24:09,232 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-02-20 14:24:09,232 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocOnStack [2022-02-20 14:24:09,232 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-02-20 14:24:09,232 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-02-20 14:24:09,232 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-02-20 14:24:09,232 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-02-20 14:24:09,233 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-02-20 14:24:09,295 INFO L234 CfgBuilder]: Building ICFG [2022-02-20 14:24:09,297 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-02-20 14:24:09,493 INFO L275 CfgBuilder]: Performing block encoding [2022-02-20 14:24:09,497 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-02-20 14:24:09,504 INFO L299 CfgBuilder]: Removed 4 assume(true) statements. [2022-02-20 14:24:09,506 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 20.02 02:24:09 BoogieIcfgContainer [2022-02-20 14:24:09,507 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-02-20 14:24:09,508 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-02-20 14:24:09,508 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-02-20 14:24:09,510 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-02-20 14:24:09,510 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 20.02 02:24:08" (1/3) ... [2022-02-20 14:24:09,511 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@5a233e79 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 20.02 02:24:09, skipping insertion in model container [2022-02-20 14:24:09,511 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 02:24:09" (2/3) ... [2022-02-20 14:24:09,511 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@5a233e79 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 20.02 02:24:09, skipping insertion in model container [2022-02-20 14:24:09,511 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 20.02 02:24:09" (3/3) ... [2022-02-20 14:24:09,512 INFO L111 eAbstractionObserver]: Analyzing ICFG array27_pattern.c [2022-02-20 14:24:09,515 INFO L205 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2022-02-20 14:24:09,515 INFO L164 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-02-20 14:24:09,544 INFO L338 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-02-20 14:24:09,549 INFO L339 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, mHoare=true, mAutomataTypeConcurrency=PETRI_NET, mHoareTripleChecks=INCREMENTAL, mHoareAnnotationPositions=LoopsAndPotentialCycles, 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, mLoopAccelerationTechnique=FAST_UPR [2022-02-20 14:24:09,549 INFO L340 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-02-20 14:24:09,564 INFO L276 IsEmpty]: Start isEmpty. Operand has 22 states, 20 states have (on average 1.6) internal successors, (32), 21 states have internal predecessors, (32), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:24:09,567 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 11 [2022-02-20 14:24:09,567 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 14:24:09,567 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 14:24:09,567 INFO L402 AbstractCegarLoop]: === Iteration 1 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 14:24:09,574 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 14:24:09,575 INFO L85 PathProgramCache]: Analyzing trace with hash -468356531, now seen corresponding path program 1 times [2022-02-20 14:24:09,584 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 14:24:09,585 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [642550788] [2022-02-20 14:24:09,586 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 14:24:09,586 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 14:24:09,677 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 14:24:09,748 INFO L290 TraceCheckUtils]: 0: Hoare triple {25#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~ARR_SIZE~0 := 0; {25#true} is VALID [2022-02-20 14:24:09,749 INFO L290 TraceCheckUtils]: 1: Hoare triple {25#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~post6#1, main_#t~post5#1, main_#t~mem9#1, main_#t~post8#1, main_#t~post7#1, main_~#array~0#1.base, main_~#array~0#1.offset, main_~row~0#1, main_~column~0#1, main_~sum~0#1;assume -32768 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 32767;~ARR_SIZE~0 := main_#t~nondet4#1;havoc main_#t~nondet4#1;assume { :begin_inline_assume_abort_if_not } true;assume_abort_if_not_#in~cond#1 := (if ~ARR_SIZE~0 > 0 then 1 else 0);havoc assume_abort_if_not_~cond#1;assume_abort_if_not_~cond#1 := assume_abort_if_not_#in~cond#1; {25#true} is VALID [2022-02-20 14:24:09,755 INFO L290 TraceCheckUtils]: 2: Hoare triple {25#true} assume 0 == assume_abort_if_not_~cond#1;assume false; {26#false} is VALID [2022-02-20 14:24:09,756 INFO L290 TraceCheckUtils]: 3: Hoare triple {26#false} assume { :end_inline_assume_abort_if_not } true;call main_~#array~0#1.base, main_~#array~0#1.offset := #Ultimate.allocOnStack(4 * (if ~ARR_SIZE~0 % 4294967296 <= 2147483647 then ~ARR_SIZE~0 % 4294967296 else ~ARR_SIZE~0 % 4294967296 - 4294967296) * (if ~ARR_SIZE~0 % 4294967296 <= 2147483647 then ~ARR_SIZE~0 % 4294967296 else ~ARR_SIZE~0 % 4294967296 - 4294967296));main_~row~0#1 := 0;main_~column~0#1 := 0;main_~sum~0#1 := 0;main_~row~0#1 := 0; {26#false} is VALID [2022-02-20 14:24:09,756 INFO L290 TraceCheckUtils]: 4: Hoare triple {26#false} assume !true; {26#false} is VALID [2022-02-20 14:24:09,756 INFO L290 TraceCheckUtils]: 5: Hoare triple {26#false} main_~row~0#1 := 0; {26#false} is VALID [2022-02-20 14:24:09,756 INFO L290 TraceCheckUtils]: 6: Hoare triple {26#false} assume !true; {26#false} is VALID [2022-02-20 14:24:09,757 INFO L290 TraceCheckUtils]: 7: Hoare triple {26#false} assume { :begin_inline___VERIFIER_assert } true;__VERIFIER_assert_#in~cond#1 := (if 2 * main_~sum~0#1 == ~ARR_SIZE~0 * (~ARR_SIZE~0 - 1) * (~ARR_SIZE~0 - 1) then 1 else 0);havoc __VERIFIER_assert_~cond#1;__VERIFIER_assert_~cond#1 := __VERIFIER_assert_#in~cond#1; {26#false} is VALID [2022-02-20 14:24:09,757 INFO L290 TraceCheckUtils]: 8: Hoare triple {26#false} assume 0 == __VERIFIER_assert_~cond#1; {26#false} is VALID [2022-02-20 14:24:09,757 INFO L290 TraceCheckUtils]: 9: Hoare triple {26#false} assume !false; {26#false} is VALID [2022-02-20 14:24:09,758 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 14:24:09,759 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 14:24:09,759 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [642550788] [2022-02-20 14:24:09,760 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [642550788] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 14:24:09,760 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 14:24:09,760 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2022-02-20 14:24:09,762 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1966956147] [2022-02-20 14:24:09,762 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 14:24:09,766 INFO L78 Accepts]: Start accepts. Automaton has has 2 states, 2 states have (on average 5.0) internal successors, (10), 2 states have internal predecessors, (10), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 10 [2022-02-20 14:24:09,767 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 14:24:09,769 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 2 states, 2 states have (on average 5.0) internal successors, (10), 2 states have internal predecessors, (10), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:24:09,791 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 10 edges. 10 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 14:24:09,791 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 2 states [2022-02-20 14:24:09,792 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 14:24:09,808 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2022-02-20 14:24:09,809 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2022-02-20 14:24:09,811 INFO L87 Difference]: Start difference. First operand has 22 states, 20 states have (on average 1.6) internal successors, (32), 21 states have internal predecessors, (32), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand has 2 states, 2 states have (on average 5.0) internal successors, (10), 2 states have internal predecessors, (10), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:24:09,849 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 14:24:09,850 INFO L93 Difference]: Finished difference Result 41 states and 60 transitions. [2022-02-20 14:24:09,850 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2022-02-20 14:24:09,850 INFO L78 Accepts]: Start accepts. Automaton has has 2 states, 2 states have (on average 5.0) internal successors, (10), 2 states have internal predecessors, (10), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 10 [2022-02-20 14:24:09,851 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 14:24:09,852 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 2 states, 2 states have (on average 5.0) internal successors, (10), 2 states have internal predecessors, (10), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:24:09,858 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2 states to 2 states and 60 transitions. [2022-02-20 14:24:09,858 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 2 states, 2 states have (on average 5.0) internal successors, (10), 2 states have internal predecessors, (10), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:24:09,863 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2 states to 2 states and 60 transitions. [2022-02-20 14:24:09,863 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 2 states and 60 transitions. [2022-02-20 14:24:09,923 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 60 edges. 60 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 14:24:09,938 INFO L225 Difference]: With dead ends: 41 [2022-02-20 14:24:09,938 INFO L226 Difference]: Without dead ends: 18 [2022-02-20 14:24:09,941 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 2 GetRequests, 2 SyntacticMatches, 0 SemanticMatches, 0 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2022-02-20 14:24:09,944 INFO L933 BasicCegarLoop]: 26 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, 26 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 [2022-02-20 14:24:09,945 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [0 Valid, 26 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 0 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 14:24:09,955 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 18 states. [2022-02-20 14:24:09,961 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 18 to 18. [2022-02-20 14:24:09,961 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 14:24:09,962 INFO L82 GeneralOperation]: Start isEquivalent. First operand 18 states. Second operand has 18 states, 17 states have (on average 1.2941176470588236) internal successors, (22), 17 states have internal predecessors, (22), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:24:09,962 INFO L74 IsIncluded]: Start isIncluded. First operand 18 states. Second operand has 18 states, 17 states have (on average 1.2941176470588236) internal successors, (22), 17 states have internal predecessors, (22), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:24:09,962 INFO L87 Difference]: Start difference. First operand 18 states. Second operand has 18 states, 17 states have (on average 1.2941176470588236) internal successors, (22), 17 states have internal predecessors, (22), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:24:09,964 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 14:24:09,964 INFO L93 Difference]: Finished difference Result 18 states and 22 transitions. [2022-02-20 14:24:09,964 INFO L276 IsEmpty]: Start isEmpty. Operand 18 states and 22 transitions. [2022-02-20 14:24:09,964 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 14:24:09,964 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 14:24:09,965 INFO L74 IsIncluded]: Start isIncluded. First operand has 18 states, 17 states have (on average 1.2941176470588236) internal successors, (22), 17 states have internal predecessors, (22), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 18 states. [2022-02-20 14:24:09,965 INFO L87 Difference]: Start difference. First operand has 18 states, 17 states have (on average 1.2941176470588236) internal successors, (22), 17 states have internal predecessors, (22), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 18 states. [2022-02-20 14:24:09,966 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 14:24:09,966 INFO L93 Difference]: Finished difference Result 18 states and 22 transitions. [2022-02-20 14:24:09,966 INFO L276 IsEmpty]: Start isEmpty. Operand 18 states and 22 transitions. [2022-02-20 14:24:09,966 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 14:24:09,966 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 14:24:09,967 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 14:24:09,967 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 14:24:09,967 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 18 states, 17 states have (on average 1.2941176470588236) internal successors, (22), 17 states have internal predecessors, (22), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:24:09,968 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 18 states to 18 states and 22 transitions. [2022-02-20 14:24:09,969 INFO L78 Accepts]: Start accepts. Automaton has 18 states and 22 transitions. Word has length 10 [2022-02-20 14:24:09,969 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 14:24:09,969 INFO L470 AbstractCegarLoop]: Abstraction has 18 states and 22 transitions. [2022-02-20 14:24:09,969 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 2 states, 2 states have (on average 5.0) internal successors, (10), 2 states have internal predecessors, (10), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:24:09,969 INFO L276 IsEmpty]: Start isEmpty. Operand 18 states and 22 transitions. [2022-02-20 14:24:09,970 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 11 [2022-02-20 14:24:09,970 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 14:24:09,970 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 14:24:09,970 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-02-20 14:24:09,971 INFO L402 AbstractCegarLoop]: === Iteration 2 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 14:24:09,971 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 14:24:09,971 INFO L85 PathProgramCache]: Analyzing trace with hash -1936709868, now seen corresponding path program 1 times [2022-02-20 14:24:09,971 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 14:24:09,972 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [491286567] [2022-02-20 14:24:09,972 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 14:24:09,972 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 14:24:09,984 ERROR L252 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-02-20 14:24:09,984 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1056921075] [2022-02-20 14:24:09,985 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 14:24:09,985 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 14:24:09,985 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 14:24:09,986 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) [2022-02-20 14:24:09,987 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Waiting until timeout for monitored process [2022-02-20 14:24:10,033 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 14:24:10,034 INFO L263 TraceCheckSpWp]: Trace formula consists of 63 conjuncts, 7 conjunts are in the unsatisfiable core [2022-02-20 14:24:10,041 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 14:24:10,043 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 14:24:10,201 INFO L290 TraceCheckUtils]: 0: Hoare triple {138#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~ARR_SIZE~0 := 0; {138#true} is VALID [2022-02-20 14:24:10,202 INFO L290 TraceCheckUtils]: 1: Hoare triple {138#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~post6#1, main_#t~post5#1, main_#t~mem9#1, main_#t~post8#1, main_#t~post7#1, main_~#array~0#1.base, main_~#array~0#1.offset, main_~row~0#1, main_~column~0#1, main_~sum~0#1;assume -32768 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 32767;~ARR_SIZE~0 := main_#t~nondet4#1;havoc main_#t~nondet4#1;assume { :begin_inline_assume_abort_if_not } true;assume_abort_if_not_#in~cond#1 := (if ~ARR_SIZE~0 > 0 then 1 else 0);havoc assume_abort_if_not_~cond#1;assume_abort_if_not_~cond#1 := assume_abort_if_not_#in~cond#1; {146#(or (and (not (< 0 ~ARR_SIZE~0)) (= |ULTIMATE.start_assume_abort_if_not_~cond#1| 0)) (and (= |ULTIMATE.start_assume_abort_if_not_~cond#1| 1) (< 0 ~ARR_SIZE~0)))} is VALID [2022-02-20 14:24:10,203 INFO L290 TraceCheckUtils]: 2: Hoare triple {146#(or (and (not (< 0 ~ARR_SIZE~0)) (= |ULTIMATE.start_assume_abort_if_not_~cond#1| 0)) (and (= |ULTIMATE.start_assume_abort_if_not_~cond#1| 1) (< 0 ~ARR_SIZE~0)))} assume !(0 == assume_abort_if_not_~cond#1); {150#(< 0 ~ARR_SIZE~0)} is VALID [2022-02-20 14:24:10,203 INFO L290 TraceCheckUtils]: 3: Hoare triple {150#(< 0 ~ARR_SIZE~0)} assume { :end_inline_assume_abort_if_not } true;call main_~#array~0#1.base, main_~#array~0#1.offset := #Ultimate.allocOnStack(4 * (if ~ARR_SIZE~0 % 4294967296 <= 2147483647 then ~ARR_SIZE~0 % 4294967296 else ~ARR_SIZE~0 % 4294967296 - 4294967296) * (if ~ARR_SIZE~0 % 4294967296 <= 2147483647 then ~ARR_SIZE~0 % 4294967296 else ~ARR_SIZE~0 % 4294967296 - 4294967296));main_~row~0#1 := 0;main_~column~0#1 := 0;main_~sum~0#1 := 0;main_~row~0#1 := 0; {154#(and (< 0 ~ARR_SIZE~0) (<= |ULTIMATE.start_main_~row~0#1| 0))} is VALID [2022-02-20 14:24:10,204 INFO L290 TraceCheckUtils]: 4: Hoare triple {154#(and (< 0 ~ARR_SIZE~0) (<= |ULTIMATE.start_main_~row~0#1| 0))} assume !(main_~row~0#1 < ~ARR_SIZE~0); {139#false} is VALID [2022-02-20 14:24:10,204 INFO L290 TraceCheckUtils]: 5: Hoare triple {139#false} main_~row~0#1 := 0; {139#false} is VALID [2022-02-20 14:24:10,204 INFO L290 TraceCheckUtils]: 6: Hoare triple {139#false} assume !(main_~row~0#1 < ~ARR_SIZE~0); {139#false} is VALID [2022-02-20 14:24:10,204 INFO L290 TraceCheckUtils]: 7: Hoare triple {139#false} assume { :begin_inline___VERIFIER_assert } true;__VERIFIER_assert_#in~cond#1 := (if 2 * main_~sum~0#1 == ~ARR_SIZE~0 * (~ARR_SIZE~0 - 1) * (~ARR_SIZE~0 - 1) then 1 else 0);havoc __VERIFIER_assert_~cond#1;__VERIFIER_assert_~cond#1 := __VERIFIER_assert_#in~cond#1; {139#false} is VALID [2022-02-20 14:24:10,205 INFO L290 TraceCheckUtils]: 8: Hoare triple {139#false} assume 0 == __VERIFIER_assert_~cond#1; {139#false} is VALID [2022-02-20 14:24:10,205 INFO L290 TraceCheckUtils]: 9: Hoare triple {139#false} assume !false; {139#false} is VALID [2022-02-20 14:24:10,205 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 14:24:10,205 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 14:24:10,205 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 14:24:10,206 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [491286567] [2022-02-20 14:24:10,206 WARN L317 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-02-20 14:24:10,206 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1056921075] [2022-02-20 14:24:10,209 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1056921075] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 14:24:10,210 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 14:24:10,210 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-02-20 14:24:10,211 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [43576516] [2022-02-20 14:24:10,211 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 14:24:10,212 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 2.0) internal successors, (10), 5 states have internal predecessors, (10), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 10 [2022-02-20 14:24:10,213 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 14:24:10,213 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 2.0) internal successors, (10), 5 states have internal predecessors, (10), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:24:10,221 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 10 edges. 10 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 14:24:10,221 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-02-20 14:24:10,223 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 14:24:10,224 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-02-20 14:24:10,224 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2022-02-20 14:24:10,224 INFO L87 Difference]: Start difference. First operand 18 states and 22 transitions. Second operand has 5 states, 5 states have (on average 2.0) internal successors, (10), 5 states have internal predecessors, (10), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:24:10,382 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 14:24:10,383 INFO L93 Difference]: Finished difference Result 36 states and 46 transitions. [2022-02-20 14:24:10,383 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-02-20 14:24:10,383 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 2.0) internal successors, (10), 5 states have internal predecessors, (10), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 10 [2022-02-20 14:24:10,383 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 14:24:10,383 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 2.0) internal successors, (10), 5 states have internal predecessors, (10), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:24:10,384 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 46 transitions. [2022-02-20 14:24:10,384 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 2.0) internal successors, (10), 5 states have internal predecessors, (10), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:24:10,385 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 46 transitions. [2022-02-20 14:24:10,385 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 46 transitions. [2022-02-20 14:24:10,421 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 46 edges. 46 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 14:24:10,422 INFO L225 Difference]: With dead ends: 36 [2022-02-20 14:24:10,422 INFO L226 Difference]: Without dead ends: 27 [2022-02-20 14:24:10,422 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 11 GetRequests, 6 SyntacticMatches, 0 SemanticMatches, 5 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=18, Invalid=24, Unknown=0, NotChecked=0, Total=42 [2022-02-20 14:24:10,423 INFO L933 BasicCegarLoop]: 7 mSDtfsCounter, 58 mSDsluCounter, 4 mSDsCounter, 0 mSdLazyCounter, 34 mSolverCounterSat, 6 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 58 SdHoareTripleChecker+Valid, 11 SdHoareTripleChecker+Invalid, 40 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 6 IncrementalHoareTripleChecker+Valid, 34 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 14:24:10,424 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [58 Valid, 11 Invalid, 40 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [6 Valid, 34 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 14:24:10,424 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 27 states. [2022-02-20 14:24:10,431 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 27 to 20. [2022-02-20 14:24:10,432 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 14:24:10,432 INFO L82 GeneralOperation]: Start isEquivalent. First operand 27 states. Second operand has 20 states, 19 states have (on average 1.263157894736842) internal successors, (24), 19 states have internal predecessors, (24), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:24:10,432 INFO L74 IsIncluded]: Start isIncluded. First operand 27 states. Second operand has 20 states, 19 states have (on average 1.263157894736842) internal successors, (24), 19 states have internal predecessors, (24), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:24:10,433 INFO L87 Difference]: Start difference. First operand 27 states. Second operand has 20 states, 19 states have (on average 1.263157894736842) internal successors, (24), 19 states have internal predecessors, (24), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:24:10,434 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 14:24:10,434 INFO L93 Difference]: Finished difference Result 27 states and 34 transitions. [2022-02-20 14:24:10,434 INFO L276 IsEmpty]: Start isEmpty. Operand 27 states and 34 transitions. [2022-02-20 14:24:10,434 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 14:24:10,434 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 14:24:10,435 INFO L74 IsIncluded]: Start isIncluded. First operand has 20 states, 19 states have (on average 1.263157894736842) internal successors, (24), 19 states have internal predecessors, (24), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 27 states. [2022-02-20 14:24:10,435 INFO L87 Difference]: Start difference. First operand has 20 states, 19 states have (on average 1.263157894736842) internal successors, (24), 19 states have internal predecessors, (24), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 27 states. [2022-02-20 14:24:10,436 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 14:24:10,436 INFO L93 Difference]: Finished difference Result 27 states and 34 transitions. [2022-02-20 14:24:10,436 INFO L276 IsEmpty]: Start isEmpty. Operand 27 states and 34 transitions. [2022-02-20 14:24:10,436 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 14:24:10,437 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 14:24:10,437 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 14:24:10,437 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 14:24:10,437 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 20 states, 19 states have (on average 1.263157894736842) internal successors, (24), 19 states have internal predecessors, (24), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:24:10,438 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 20 states to 20 states and 24 transitions. [2022-02-20 14:24:10,438 INFO L78 Accepts]: Start accepts. Automaton has 20 states and 24 transitions. Word has length 10 [2022-02-20 14:24:10,438 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 14:24:10,438 INFO L470 AbstractCegarLoop]: Abstraction has 20 states and 24 transitions. [2022-02-20 14:24:10,438 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 2.0) internal successors, (10), 5 states have internal predecessors, (10), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:24:10,439 INFO L276 IsEmpty]: Start isEmpty. Operand 20 states and 24 transitions. [2022-02-20 14:24:10,439 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 17 [2022-02-20 14:24:10,439 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 14:24:10,439 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 14:24:10,459 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (2)] Forceful destruction successful, exit code 0 [2022-02-20 14:24:10,655 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1,2 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 14:24:10,656 INFO L402 AbstractCegarLoop]: === Iteration 3 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 14:24:10,656 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 14:24:10,656 INFO L85 PathProgramCache]: Analyzing trace with hash 129650620, now seen corresponding path program 1 times [2022-02-20 14:24:10,656 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 14:24:10,656 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1542905451] [2022-02-20 14:24:10,657 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 14:24:10,657 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 14:24:10,669 ERROR L252 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-02-20 14:24:10,669 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1185594774] [2022-02-20 14:24:10,670 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 14:24:10,670 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 14:24:10,671 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 14:24:10,673 INFO L229 MonitoredProcess]: Starting monitored process 3 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-02-20 14:24:10,674 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Waiting until timeout for monitored process [2022-02-20 14:24:10,708 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 14:24:10,709 INFO L263 TraceCheckSpWp]: Trace formula consists of 75 conjuncts, 4 conjunts are in the unsatisfiable core [2022-02-20 14:24:10,721 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 14:24:10,722 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 14:24:10,808 INFO L290 TraceCheckUtils]: 0: Hoare triple {302#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~ARR_SIZE~0 := 0; {302#true} is VALID [2022-02-20 14:24:10,808 INFO L290 TraceCheckUtils]: 1: Hoare triple {302#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~post6#1, main_#t~post5#1, main_#t~mem9#1, main_#t~post8#1, main_#t~post7#1, main_~#array~0#1.base, main_~#array~0#1.offset, main_~row~0#1, main_~column~0#1, main_~sum~0#1;assume -32768 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 32767;~ARR_SIZE~0 := main_#t~nondet4#1;havoc main_#t~nondet4#1;assume { :begin_inline_assume_abort_if_not } true;assume_abort_if_not_#in~cond#1 := (if ~ARR_SIZE~0 > 0 then 1 else 0);havoc assume_abort_if_not_~cond#1;assume_abort_if_not_~cond#1 := assume_abort_if_not_#in~cond#1; {302#true} is VALID [2022-02-20 14:24:10,808 INFO L290 TraceCheckUtils]: 2: Hoare triple {302#true} assume !(0 == assume_abort_if_not_~cond#1); {302#true} is VALID [2022-02-20 14:24:10,809 INFO L290 TraceCheckUtils]: 3: Hoare triple {302#true} assume { :end_inline_assume_abort_if_not } true;call main_~#array~0#1.base, main_~#array~0#1.offset := #Ultimate.allocOnStack(4 * (if ~ARR_SIZE~0 % 4294967296 <= 2147483647 then ~ARR_SIZE~0 % 4294967296 else ~ARR_SIZE~0 % 4294967296 - 4294967296) * (if ~ARR_SIZE~0 % 4294967296 <= 2147483647 then ~ARR_SIZE~0 % 4294967296 else ~ARR_SIZE~0 % 4294967296 - 4294967296));main_~row~0#1 := 0;main_~column~0#1 := 0;main_~sum~0#1 := 0;main_~row~0#1 := 0; {316#(<= 0 |ULTIMATE.start_main_~row~0#1|)} is VALID [2022-02-20 14:24:10,811 INFO L290 TraceCheckUtils]: 4: Hoare triple {316#(<= 0 |ULTIMATE.start_main_~row~0#1|)} assume !!(main_~row~0#1 < ~ARR_SIZE~0);main_~column~0#1 := 0; {320#(and (< 0 ~ARR_SIZE~0) (<= |ULTIMATE.start_main_~column~0#1| 0))} is VALID [2022-02-20 14:24:10,811 INFO L290 TraceCheckUtils]: 5: Hoare triple {320#(and (< 0 ~ARR_SIZE~0) (<= |ULTIMATE.start_main_~column~0#1| 0))} assume !(main_~column~0#1 < ~ARR_SIZE~0); {303#false} is VALID [2022-02-20 14:24:10,811 INFO L290 TraceCheckUtils]: 6: Hoare triple {303#false} main_#t~post5#1 := main_~row~0#1;main_~row~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {303#false} is VALID [2022-02-20 14:24:10,812 INFO L290 TraceCheckUtils]: 7: Hoare triple {303#false} assume !(main_~row~0#1 < ~ARR_SIZE~0); {303#false} is VALID [2022-02-20 14:24:10,812 INFO L290 TraceCheckUtils]: 8: Hoare triple {303#false} main_~row~0#1 := 0; {303#false} is VALID [2022-02-20 14:24:10,812 INFO L290 TraceCheckUtils]: 9: Hoare triple {303#false} assume !!(main_~row~0#1 < ~ARR_SIZE~0);main_~column~0#1 := 0; {303#false} is VALID [2022-02-20 14:24:10,812 INFO L290 TraceCheckUtils]: 10: Hoare triple {303#false} assume !(main_~column~0#1 < ~ARR_SIZE~0); {303#false} is VALID [2022-02-20 14:24:10,812 INFO L290 TraceCheckUtils]: 11: Hoare triple {303#false} main_#t~post7#1 := main_~row~0#1;main_~row~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {303#false} is VALID [2022-02-20 14:24:10,813 INFO L290 TraceCheckUtils]: 12: Hoare triple {303#false} assume !(main_~row~0#1 < ~ARR_SIZE~0); {303#false} is VALID [2022-02-20 14:24:10,813 INFO L290 TraceCheckUtils]: 13: Hoare triple {303#false} assume { :begin_inline___VERIFIER_assert } true;__VERIFIER_assert_#in~cond#1 := (if 2 * main_~sum~0#1 == ~ARR_SIZE~0 * (~ARR_SIZE~0 - 1) * (~ARR_SIZE~0 - 1) then 1 else 0);havoc __VERIFIER_assert_~cond#1;__VERIFIER_assert_~cond#1 := __VERIFIER_assert_#in~cond#1; {303#false} is VALID [2022-02-20 14:24:10,813 INFO L290 TraceCheckUtils]: 14: Hoare triple {303#false} assume 0 == __VERIFIER_assert_~cond#1; {303#false} is VALID [2022-02-20 14:24:10,813 INFO L290 TraceCheckUtils]: 15: Hoare triple {303#false} assume !false; {303#false} is VALID [2022-02-20 14:24:10,813 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 1 proven. 0 refuted. 0 times theorem prover too weak. 1 trivial. 0 not checked. [2022-02-20 14:24:10,814 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 14:24:10,814 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 14:24:10,814 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1542905451] [2022-02-20 14:24:10,814 WARN L317 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-02-20 14:24:10,814 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1185594774] [2022-02-20 14:24:10,814 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1185594774] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 14:24:10,815 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 14:24:10,815 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-02-20 14:24:10,815 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [196918687] [2022-02-20 14:24:10,815 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 14:24:10,815 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 4.0) internal successors, (16), 4 states have internal predecessors, (16), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 16 [2022-02-20 14:24:10,816 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 14:24:10,816 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 4 states, 4 states have (on average 4.0) internal successors, (16), 4 states have internal predecessors, (16), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:24:10,826 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 16 edges. 16 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 14:24:10,827 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-02-20 14:24:10,827 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 14:24:10,827 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-02-20 14:24:10,827 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-02-20 14:24:10,828 INFO L87 Difference]: Start difference. First operand 20 states and 24 transitions. Second operand has 4 states, 4 states have (on average 4.0) internal successors, (16), 4 states have internal predecessors, (16), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:24:10,920 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 14:24:10,920 INFO L93 Difference]: Finished difference Result 40 states and 51 transitions. [2022-02-20 14:24:10,921 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-02-20 14:24:10,921 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 4.0) internal successors, (16), 4 states have internal predecessors, (16), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 16 [2022-02-20 14:24:10,921 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 14:24:10,921 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 4.0) internal successors, (16), 4 states have internal predecessors, (16), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:24:10,922 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 48 transitions. [2022-02-20 14:24:10,922 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 4.0) internal successors, (16), 4 states have internal predecessors, (16), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:24:10,923 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 48 transitions. [2022-02-20 14:24:10,923 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 48 transitions. [2022-02-20 14:24:10,967 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 48 edges. 48 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 14:24:10,968 INFO L225 Difference]: With dead ends: 40 [2022-02-20 14:24:10,968 INFO L226 Difference]: Without dead ends: 25 [2022-02-20 14:24:10,968 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 16 GetRequests, 13 SyntacticMatches, 0 SemanticMatches, 3 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=9, Invalid=11, Unknown=0, NotChecked=0, Total=20 [2022-02-20 14:24:10,969 INFO L933 BasicCegarLoop]: 10 mSDtfsCounter, 23 mSDsluCounter, 6 mSDsCounter, 0 mSdLazyCounter, 29 mSolverCounterSat, 7 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 23 SdHoareTripleChecker+Valid, 16 SdHoareTripleChecker+Invalid, 36 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 7 IncrementalHoareTripleChecker+Valid, 29 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 14:24:10,970 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [23 Valid, 16 Invalid, 36 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [7 Valid, 29 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 14:24:10,970 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 25 states. [2022-02-20 14:24:10,984 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 25 to 22. [2022-02-20 14:24:10,984 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 14:24:10,984 INFO L82 GeneralOperation]: Start isEquivalent. First operand 25 states. Second operand has 22 states, 21 states have (on average 1.2380952380952381) internal successors, (26), 21 states have internal predecessors, (26), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:24:10,985 INFO L74 IsIncluded]: Start isIncluded. First operand 25 states. Second operand has 22 states, 21 states have (on average 1.2380952380952381) internal successors, (26), 21 states have internal predecessors, (26), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:24:10,985 INFO L87 Difference]: Start difference. First operand 25 states. Second operand has 22 states, 21 states have (on average 1.2380952380952381) internal successors, (26), 21 states have internal predecessors, (26), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:24:10,986 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 14:24:10,986 INFO L93 Difference]: Finished difference Result 25 states and 30 transitions. [2022-02-20 14:24:10,986 INFO L276 IsEmpty]: Start isEmpty. Operand 25 states and 30 transitions. [2022-02-20 14:24:10,986 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 14:24:10,986 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 14:24:10,987 INFO L74 IsIncluded]: Start isIncluded. First operand has 22 states, 21 states have (on average 1.2380952380952381) internal successors, (26), 21 states have internal predecessors, (26), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 25 states. [2022-02-20 14:24:10,987 INFO L87 Difference]: Start difference. First operand has 22 states, 21 states have (on average 1.2380952380952381) internal successors, (26), 21 states have internal predecessors, (26), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 25 states. [2022-02-20 14:24:10,988 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 14:24:10,988 INFO L93 Difference]: Finished difference Result 25 states and 30 transitions. [2022-02-20 14:24:10,988 INFO L276 IsEmpty]: Start isEmpty. Operand 25 states and 30 transitions. [2022-02-20 14:24:10,988 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 14:24:10,989 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 14:24:10,989 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 14:24:10,989 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 14:24:10,989 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 22 states, 21 states have (on average 1.2380952380952381) internal successors, (26), 21 states have internal predecessors, (26), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:24:10,990 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 22 states to 22 states and 26 transitions. [2022-02-20 14:24:10,990 INFO L78 Accepts]: Start accepts. Automaton has 22 states and 26 transitions. Word has length 16 [2022-02-20 14:24:10,990 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 14:24:10,990 INFO L470 AbstractCegarLoop]: Abstraction has 22 states and 26 transitions. [2022-02-20 14:24:10,990 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 4 states have (on average 4.0) internal successors, (16), 4 states have internal predecessors, (16), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:24:10,991 INFO L276 IsEmpty]: Start isEmpty. Operand 22 states and 26 transitions. [2022-02-20 14:24:10,991 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 22 [2022-02-20 14:24:10,991 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 14:24:10,991 INFO L514 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 14:24:11,010 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (3)] Forceful destruction successful, exit code 0 [2022-02-20 14:24:11,203 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 3 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable2 [2022-02-20 14:24:11,204 INFO L402 AbstractCegarLoop]: === Iteration 4 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 14:24:11,204 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 14:24:11,204 INFO L85 PathProgramCache]: Analyzing trace with hash -1705469543, now seen corresponding path program 1 times [2022-02-20 14:24:11,204 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 14:24:11,204 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1144424146] [2022-02-20 14:24:11,205 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 14:24:11,205 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 14:24:11,218 ERROR L252 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-02-20 14:24:11,219 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [2059348927] [2022-02-20 14:24:11,219 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 14:24:11,219 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 14:24:11,219 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 14:24:11,220 INFO L229 MonitoredProcess]: Starting monitored process 4 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-02-20 14:24:11,221 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Waiting until timeout for monitored process [2022-02-20 14:24:11,261 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 14:24:11,262 INFO L263 TraceCheckSpWp]: Trace formula consists of 89 conjuncts, 21 conjunts are in the unsatisfiable core [2022-02-20 14:24:11,273 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 14:24:11,274 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 14:24:11,592 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 37 treesize of output 32 [2022-02-20 14:24:11,600 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 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 7 [2022-02-20 14:24:11,608 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 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 7 [2022-02-20 14:24:11,844 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 36 treesize of output 24 [2022-02-20 14:24:12,017 INFO L290 TraceCheckUtils]: 0: Hoare triple {488#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~ARR_SIZE~0 := 0; {488#true} is VALID [2022-02-20 14:24:12,018 INFO L290 TraceCheckUtils]: 1: Hoare triple {488#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~post6#1, main_#t~post5#1, main_#t~mem9#1, main_#t~post8#1, main_#t~post7#1, main_~#array~0#1.base, main_~#array~0#1.offset, main_~row~0#1, main_~column~0#1, main_~sum~0#1;assume -32768 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 32767;~ARR_SIZE~0 := main_#t~nondet4#1;havoc main_#t~nondet4#1;assume { :begin_inline_assume_abort_if_not } true;assume_abort_if_not_#in~cond#1 := (if ~ARR_SIZE~0 > 0 then 1 else 0);havoc assume_abort_if_not_~cond#1;assume_abort_if_not_~cond#1 := assume_abort_if_not_#in~cond#1; {488#true} is VALID [2022-02-20 14:24:12,018 INFO L290 TraceCheckUtils]: 2: Hoare triple {488#true} assume !(0 == assume_abort_if_not_~cond#1); {488#true} is VALID [2022-02-20 14:24:12,018 INFO L290 TraceCheckUtils]: 3: Hoare triple {488#true} assume { :end_inline_assume_abort_if_not } true;call main_~#array~0#1.base, main_~#array~0#1.offset := #Ultimate.allocOnStack(4 * (if ~ARR_SIZE~0 % 4294967296 <= 2147483647 then ~ARR_SIZE~0 % 4294967296 else ~ARR_SIZE~0 % 4294967296 - 4294967296) * (if ~ARR_SIZE~0 % 4294967296 <= 2147483647 then ~ARR_SIZE~0 % 4294967296 else ~ARR_SIZE~0 % 4294967296 - 4294967296));main_~row~0#1 := 0;main_~column~0#1 := 0;main_~sum~0#1 := 0;main_~row~0#1 := 0; {502#(and (= |ULTIMATE.start_main_~sum~0#1| 0) (= |ULTIMATE.start_main_~row~0#1| 0))} is VALID [2022-02-20 14:24:12,019 INFO L290 TraceCheckUtils]: 4: Hoare triple {502#(and (= |ULTIMATE.start_main_~sum~0#1| 0) (= |ULTIMATE.start_main_~row~0#1| 0))} assume !!(main_~row~0#1 < ~ARR_SIZE~0);main_~column~0#1 := 0; {506#(and (= |ULTIMATE.start_main_~sum~0#1| 0) (< |ULTIMATE.start_main_~row~0#1| ~ARR_SIZE~0) (<= |ULTIMATE.start_main_~column~0#1| 0) (= |ULTIMATE.start_main_~row~0#1| 0))} is VALID [2022-02-20 14:24:12,019 INFO L290 TraceCheckUtils]: 5: Hoare triple {506#(and (= |ULTIMATE.start_main_~sum~0#1| 0) (< |ULTIMATE.start_main_~row~0#1| ~ARR_SIZE~0) (<= |ULTIMATE.start_main_~column~0#1| 0) (= |ULTIMATE.start_main_~row~0#1| 0))} assume !!(main_~column~0#1 < ~ARR_SIZE~0); {506#(and (= |ULTIMATE.start_main_~sum~0#1| 0) (< |ULTIMATE.start_main_~row~0#1| ~ARR_SIZE~0) (<= |ULTIMATE.start_main_~column~0#1| 0) (= |ULTIMATE.start_main_~row~0#1| 0))} is VALID [2022-02-20 14:24:12,020 INFO L290 TraceCheckUtils]: 6: Hoare triple {506#(and (= |ULTIMATE.start_main_~sum~0#1| 0) (< |ULTIMATE.start_main_~row~0#1| ~ARR_SIZE~0) (<= |ULTIMATE.start_main_~column~0#1| 0) (= |ULTIMATE.start_main_~row~0#1| 0))} assume main_~row~0#1 == main_~column~0#1;call write~int(0, main_~#array~0#1.base, main_~#array~0#1.offset + main_~row~0#1 * (4 * (if ~ARR_SIZE~0 % 4294967296 <= 2147483647 then ~ARR_SIZE~0 % 4294967296 else ~ARR_SIZE~0 % 4294967296 - 4294967296)) + 4 * main_~row~0#1, 4); {513#(and (< 0 ~ARR_SIZE~0) (= |ULTIMATE.start_main_~sum~0#1| 0) (<= |ULTIMATE.start_main_~column~0#1| 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) |ULTIMATE.start_main_~#array~0#1.offset|) 0))} is VALID [2022-02-20 14:24:12,021 INFO L290 TraceCheckUtils]: 7: Hoare triple {513#(and (< 0 ~ARR_SIZE~0) (= |ULTIMATE.start_main_~sum~0#1| 0) (<= |ULTIMATE.start_main_~column~0#1| 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) |ULTIMATE.start_main_~#array~0#1.offset|) 0))} main_#t~post6#1 := main_~column~0#1;main_~column~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {517#(and (< 0 ~ARR_SIZE~0) (= |ULTIMATE.start_main_~sum~0#1| 0) (<= |ULTIMATE.start_main_~column~0#1| 1) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) |ULTIMATE.start_main_~#array~0#1.offset|) 0))} is VALID [2022-02-20 14:24:12,022 INFO L290 TraceCheckUtils]: 8: Hoare triple {517#(and (< 0 ~ARR_SIZE~0) (= |ULTIMATE.start_main_~sum~0#1| 0) (<= |ULTIMATE.start_main_~column~0#1| 1) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) |ULTIMATE.start_main_~#array~0#1.offset|) 0))} assume !(main_~column~0#1 < ~ARR_SIZE~0); {521#(and (< 0 ~ARR_SIZE~0) (<= ~ARR_SIZE~0 1) (= |ULTIMATE.start_main_~sum~0#1| 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) |ULTIMATE.start_main_~#array~0#1.offset|) 0))} is VALID [2022-02-20 14:24:12,023 INFO L290 TraceCheckUtils]: 9: Hoare triple {521#(and (< 0 ~ARR_SIZE~0) (<= ~ARR_SIZE~0 1) (= |ULTIMATE.start_main_~sum~0#1| 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) |ULTIMATE.start_main_~#array~0#1.offset|) 0))} main_#t~post5#1 := main_~row~0#1;main_~row~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {521#(and (< 0 ~ARR_SIZE~0) (<= ~ARR_SIZE~0 1) (= |ULTIMATE.start_main_~sum~0#1| 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) |ULTIMATE.start_main_~#array~0#1.offset|) 0))} is VALID [2022-02-20 14:24:12,023 INFO L290 TraceCheckUtils]: 10: Hoare triple {521#(and (< 0 ~ARR_SIZE~0) (<= ~ARR_SIZE~0 1) (= |ULTIMATE.start_main_~sum~0#1| 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) |ULTIMATE.start_main_~#array~0#1.offset|) 0))} assume !(main_~row~0#1 < ~ARR_SIZE~0); {521#(and (< 0 ~ARR_SIZE~0) (<= ~ARR_SIZE~0 1) (= |ULTIMATE.start_main_~sum~0#1| 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) |ULTIMATE.start_main_~#array~0#1.offset|) 0))} is VALID [2022-02-20 14:24:12,024 INFO L290 TraceCheckUtils]: 11: Hoare triple {521#(and (< 0 ~ARR_SIZE~0) (<= ~ARR_SIZE~0 1) (= |ULTIMATE.start_main_~sum~0#1| 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) |ULTIMATE.start_main_~#array~0#1.offset|) 0))} main_~row~0#1 := 0; {531#(and (< 0 ~ARR_SIZE~0) (<= ~ARR_SIZE~0 1) (= |ULTIMATE.start_main_~sum~0#1| 0) (= |ULTIMATE.start_main_~row~0#1| 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) |ULTIMATE.start_main_~#array~0#1.offset|) 0))} is VALID [2022-02-20 14:24:12,024 INFO L290 TraceCheckUtils]: 12: Hoare triple {531#(and (< 0 ~ARR_SIZE~0) (<= ~ARR_SIZE~0 1) (= |ULTIMATE.start_main_~sum~0#1| 0) (= |ULTIMATE.start_main_~row~0#1| 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) |ULTIMATE.start_main_~#array~0#1.offset|) 0))} assume !!(main_~row~0#1 < ~ARR_SIZE~0);main_~column~0#1 := 0; {535#(and (< 0 ~ARR_SIZE~0) (<= ~ARR_SIZE~0 1) (= |ULTIMATE.start_main_~sum~0#1| 0) (= |ULTIMATE.start_main_~row~0#1| 0) (= |ULTIMATE.start_main_~column~0#1| 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) |ULTIMATE.start_main_~#array~0#1.offset|) 0))} is VALID [2022-02-20 14:24:12,025 INFO L290 TraceCheckUtils]: 13: Hoare triple {535#(and (< 0 ~ARR_SIZE~0) (<= ~ARR_SIZE~0 1) (= |ULTIMATE.start_main_~sum~0#1| 0) (= |ULTIMATE.start_main_~row~0#1| 0) (= |ULTIMATE.start_main_~column~0#1| 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) |ULTIMATE.start_main_~#array~0#1.offset|) 0))} assume !!(main_~column~0#1 < ~ARR_SIZE~0);call main_#t~mem9#1 := read~int(main_~#array~0#1.base, main_~#array~0#1.offset + main_~row~0#1 * (4 * (if ~ARR_SIZE~0 % 4294967296 <= 2147483647 then ~ARR_SIZE~0 % 4294967296 else ~ARR_SIZE~0 % 4294967296 - 4294967296)) + 4 * main_~column~0#1, 4);main_~sum~0#1 := main_~sum~0#1 + main_#t~mem9#1;havoc main_#t~mem9#1; {539#(and (< 0 ~ARR_SIZE~0) (<= ~ARR_SIZE~0 1) (= |ULTIMATE.start_main_~sum~0#1| 0))} is VALID [2022-02-20 14:24:12,026 INFO L290 TraceCheckUtils]: 14: Hoare triple {539#(and (< 0 ~ARR_SIZE~0) (<= ~ARR_SIZE~0 1) (= |ULTIMATE.start_main_~sum~0#1| 0))} main_#t~post8#1 := main_~column~0#1;main_~column~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; {539#(and (< 0 ~ARR_SIZE~0) (<= ~ARR_SIZE~0 1) (= |ULTIMATE.start_main_~sum~0#1| 0))} is VALID [2022-02-20 14:24:12,028 INFO L290 TraceCheckUtils]: 15: Hoare triple {539#(and (< 0 ~ARR_SIZE~0) (<= ~ARR_SIZE~0 1) (= |ULTIMATE.start_main_~sum~0#1| 0))} assume !(main_~column~0#1 < ~ARR_SIZE~0); {539#(and (< 0 ~ARR_SIZE~0) (<= ~ARR_SIZE~0 1) (= |ULTIMATE.start_main_~sum~0#1| 0))} is VALID [2022-02-20 14:24:12,029 INFO L290 TraceCheckUtils]: 16: Hoare triple {539#(and (< 0 ~ARR_SIZE~0) (<= ~ARR_SIZE~0 1) (= |ULTIMATE.start_main_~sum~0#1| 0))} main_#t~post7#1 := main_~row~0#1;main_~row~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {539#(and (< 0 ~ARR_SIZE~0) (<= ~ARR_SIZE~0 1) (= |ULTIMATE.start_main_~sum~0#1| 0))} is VALID [2022-02-20 14:24:12,029 INFO L290 TraceCheckUtils]: 17: Hoare triple {539#(and (< 0 ~ARR_SIZE~0) (<= ~ARR_SIZE~0 1) (= |ULTIMATE.start_main_~sum~0#1| 0))} assume !(main_~row~0#1 < ~ARR_SIZE~0); {539#(and (< 0 ~ARR_SIZE~0) (<= ~ARR_SIZE~0 1) (= |ULTIMATE.start_main_~sum~0#1| 0))} is VALID [2022-02-20 14:24:12,030 INFO L290 TraceCheckUtils]: 18: Hoare triple {539#(and (< 0 ~ARR_SIZE~0) (<= ~ARR_SIZE~0 1) (= |ULTIMATE.start_main_~sum~0#1| 0))} assume { :begin_inline___VERIFIER_assert } true;__VERIFIER_assert_#in~cond#1 := (if 2 * main_~sum~0#1 == ~ARR_SIZE~0 * (~ARR_SIZE~0 - 1) * (~ARR_SIZE~0 - 1) then 1 else 0);havoc __VERIFIER_assert_~cond#1;__VERIFIER_assert_~cond#1 := __VERIFIER_assert_#in~cond#1; {555#(<= 1 |ULTIMATE.start___VERIFIER_assert_~cond#1|)} is VALID [2022-02-20 14:24:12,031 INFO L290 TraceCheckUtils]: 19: Hoare triple {555#(<= 1 |ULTIMATE.start___VERIFIER_assert_~cond#1|)} assume 0 == __VERIFIER_assert_~cond#1; {489#false} is VALID [2022-02-20 14:24:12,031 INFO L290 TraceCheckUtils]: 20: Hoare triple {489#false} assume !false; {489#false} is VALID [2022-02-20 14:24:12,031 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 0 proven. 4 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 14:24:12,031 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 14:24:12,439 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 56 treesize of output 52 [2022-02-20 14:24:12,519 INFO L356 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2022-02-20 14:24:12,520 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 2 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 2 new quantified variables, introduced 2 case distinctions, treesize of input 52 treesize of output 121 [2022-02-20 14:24:13,187 INFO L356 Elim1Store]: treesize reduction 59, result has 1.7 percent of original size [2022-02-20 14:24:13,187 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 2 case distinctions, treesize of input 80 treesize of output 4 [2022-02-20 14:24:13,317 INFO L356 Elim1Store]: treesize reduction 38, result has 47.9 percent of original size [2022-02-20 14:24:13,317 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 3 select indices, 3 select index equivalence classes, 0 disjoint index pairs (out of 3 index pairs), introduced 3 new quantified variables, introduced 3 case distinctions, treesize of input 133 treesize of output 137 [2022-02-20 14:24:17,833 INFO L290 TraceCheckUtils]: 20: Hoare triple {489#false} assume !false; {489#false} is VALID [2022-02-20 14:24:17,833 INFO L290 TraceCheckUtils]: 19: Hoare triple {555#(<= 1 |ULTIMATE.start___VERIFIER_assert_~cond#1|)} assume 0 == __VERIFIER_assert_~cond#1; {489#false} is VALID [2022-02-20 14:24:17,834 INFO L290 TraceCheckUtils]: 18: Hoare triple {568#(= (+ (* 2 |ULTIMATE.start_main_~sum~0#1|) (* 2 (* ~ARR_SIZE~0 ~ARR_SIZE~0))) (+ (* ~ARR_SIZE~0 ~ARR_SIZE~0 ~ARR_SIZE~0) ~ARR_SIZE~0))} assume { :begin_inline___VERIFIER_assert } true;__VERIFIER_assert_#in~cond#1 := (if 2 * main_~sum~0#1 == ~ARR_SIZE~0 * (~ARR_SIZE~0 - 1) * (~ARR_SIZE~0 - 1) then 1 else 0);havoc __VERIFIER_assert_~cond#1;__VERIFIER_assert_~cond#1 := __VERIFIER_assert_#in~cond#1; {555#(<= 1 |ULTIMATE.start___VERIFIER_assert_~cond#1|)} is VALID [2022-02-20 14:24:17,834 INFO L290 TraceCheckUtils]: 17: Hoare triple {568#(= (+ (* 2 |ULTIMATE.start_main_~sum~0#1|) (* 2 (* ~ARR_SIZE~0 ~ARR_SIZE~0))) (+ (* ~ARR_SIZE~0 ~ARR_SIZE~0 ~ARR_SIZE~0) ~ARR_SIZE~0))} assume !(main_~row~0#1 < ~ARR_SIZE~0); {568#(= (+ (* 2 |ULTIMATE.start_main_~sum~0#1|) (* 2 (* ~ARR_SIZE~0 ~ARR_SIZE~0))) (+ (* ~ARR_SIZE~0 ~ARR_SIZE~0 ~ARR_SIZE~0) ~ARR_SIZE~0))} is VALID [2022-02-20 14:24:17,835 INFO L290 TraceCheckUtils]: 16: Hoare triple {568#(= (+ (* 2 |ULTIMATE.start_main_~sum~0#1|) (* 2 (* ~ARR_SIZE~0 ~ARR_SIZE~0))) (+ (* ~ARR_SIZE~0 ~ARR_SIZE~0 ~ARR_SIZE~0) ~ARR_SIZE~0))} main_#t~post7#1 := main_~row~0#1;main_~row~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {568#(= (+ (* 2 |ULTIMATE.start_main_~sum~0#1|) (* 2 (* ~ARR_SIZE~0 ~ARR_SIZE~0))) (+ (* ~ARR_SIZE~0 ~ARR_SIZE~0 ~ARR_SIZE~0) ~ARR_SIZE~0))} is VALID [2022-02-20 14:24:17,835 INFO L290 TraceCheckUtils]: 15: Hoare triple {568#(= (+ (* 2 |ULTIMATE.start_main_~sum~0#1|) (* 2 (* ~ARR_SIZE~0 ~ARR_SIZE~0))) (+ (* ~ARR_SIZE~0 ~ARR_SIZE~0 ~ARR_SIZE~0) ~ARR_SIZE~0))} assume !(main_~column~0#1 < ~ARR_SIZE~0); {568#(= (+ (* 2 |ULTIMATE.start_main_~sum~0#1|) (* 2 (* ~ARR_SIZE~0 ~ARR_SIZE~0))) (+ (* ~ARR_SIZE~0 ~ARR_SIZE~0 ~ARR_SIZE~0) ~ARR_SIZE~0))} is VALID [2022-02-20 14:24:17,835 INFO L290 TraceCheckUtils]: 14: Hoare triple {568#(= (+ (* 2 |ULTIMATE.start_main_~sum~0#1|) (* 2 (* ~ARR_SIZE~0 ~ARR_SIZE~0))) (+ (* ~ARR_SIZE~0 ~ARR_SIZE~0 ~ARR_SIZE~0) ~ARR_SIZE~0))} main_#t~post8#1 := main_~column~0#1;main_~column~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; {568#(= (+ (* 2 |ULTIMATE.start_main_~sum~0#1|) (* 2 (* ~ARR_SIZE~0 ~ARR_SIZE~0))) (+ (* ~ARR_SIZE~0 ~ARR_SIZE~0 ~ARR_SIZE~0) ~ARR_SIZE~0))} is VALID [2022-02-20 14:24:17,840 INFO L290 TraceCheckUtils]: 13: Hoare triple {584#(and (or (= (+ (* ~ARR_SIZE~0 ~ARR_SIZE~0 ~ARR_SIZE~0) ~ARR_SIZE~0) (+ (* (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~row~0#1|) (* |ULTIMATE.start_main_~column~0#1| 4) |ULTIMATE.start_main_~#array~0#1.offset|)) 2) (* 2 |ULTIMATE.start_main_~sum~0#1|) (* 2 (* ~ARR_SIZE~0 ~ARR_SIZE~0)))) (not (<= (mod ~ARR_SIZE~0 4294967296) 2147483647))) (or (<= (mod ~ARR_SIZE~0 4294967296) 2147483647) (= (+ (* ~ARR_SIZE~0 ~ARR_SIZE~0 ~ARR_SIZE~0) ~ARR_SIZE~0) (+ (* (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* |ULTIMATE.start_main_~column~0#1| 4) |ULTIMATE.start_main_~#array~0#1.offset| (* |ULTIMATE.start_main_~row~0#1| (+ (- 17179869184) (* (mod ~ARR_SIZE~0 4294967296) 4))))) 2) (* 2 |ULTIMATE.start_main_~sum~0#1|) (* 2 (* ~ARR_SIZE~0 ~ARR_SIZE~0))))))} assume !!(main_~column~0#1 < ~ARR_SIZE~0);call main_#t~mem9#1 := read~int(main_~#array~0#1.base, main_~#array~0#1.offset + main_~row~0#1 * (4 * (if ~ARR_SIZE~0 % 4294967296 <= 2147483647 then ~ARR_SIZE~0 % 4294967296 else ~ARR_SIZE~0 % 4294967296 - 4294967296)) + 4 * main_~column~0#1, 4);main_~sum~0#1 := main_~sum~0#1 + main_#t~mem9#1;havoc main_#t~mem9#1; {568#(= (+ (* 2 |ULTIMATE.start_main_~sum~0#1|) (* 2 (* ~ARR_SIZE~0 ~ARR_SIZE~0))) (+ (* ~ARR_SIZE~0 ~ARR_SIZE~0 ~ARR_SIZE~0) ~ARR_SIZE~0))} is VALID [2022-02-20 14:24:17,843 INFO L290 TraceCheckUtils]: 12: Hoare triple {588#(and (or (= (+ (* ~ARR_SIZE~0 ~ARR_SIZE~0 ~ARR_SIZE~0) ~ARR_SIZE~0) (+ (* (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ |ULTIMATE.start_main_~#array~0#1.offset| (* |ULTIMATE.start_main_~row~0#1| (+ (- 17179869184) (* (mod ~ARR_SIZE~0 4294967296) 4))))) 2) (* 2 |ULTIMATE.start_main_~sum~0#1|) (* 2 (* ~ARR_SIZE~0 ~ARR_SIZE~0)))) (<= (mod ~ARR_SIZE~0 4294967296) 2147483647)) (or (= (+ (* ~ARR_SIZE~0 ~ARR_SIZE~0 ~ARR_SIZE~0) ~ARR_SIZE~0) (+ (* 2 (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~row~0#1|) |ULTIMATE.start_main_~#array~0#1.offset|))) (* 2 |ULTIMATE.start_main_~sum~0#1|) (* 2 (* ~ARR_SIZE~0 ~ARR_SIZE~0)))) (not (<= (mod ~ARR_SIZE~0 4294967296) 2147483647))))} assume !!(main_~row~0#1 < ~ARR_SIZE~0);main_~column~0#1 := 0; {584#(and (or (= (+ (* ~ARR_SIZE~0 ~ARR_SIZE~0 ~ARR_SIZE~0) ~ARR_SIZE~0) (+ (* (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~row~0#1|) (* |ULTIMATE.start_main_~column~0#1| 4) |ULTIMATE.start_main_~#array~0#1.offset|)) 2) (* 2 |ULTIMATE.start_main_~sum~0#1|) (* 2 (* ~ARR_SIZE~0 ~ARR_SIZE~0)))) (not (<= (mod ~ARR_SIZE~0 4294967296) 2147483647))) (or (<= (mod ~ARR_SIZE~0 4294967296) 2147483647) (= (+ (* ~ARR_SIZE~0 ~ARR_SIZE~0 ~ARR_SIZE~0) ~ARR_SIZE~0) (+ (* (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* |ULTIMATE.start_main_~column~0#1| 4) |ULTIMATE.start_main_~#array~0#1.offset| (* |ULTIMATE.start_main_~row~0#1| (+ (- 17179869184) (* (mod ~ARR_SIZE~0 4294967296) 4))))) 2) (* 2 |ULTIMATE.start_main_~sum~0#1|) (* 2 (* ~ARR_SIZE~0 ~ARR_SIZE~0))))))} is VALID [2022-02-20 14:24:17,844 INFO L290 TraceCheckUtils]: 11: Hoare triple {592#(= (+ (* ~ARR_SIZE~0 ~ARR_SIZE~0 ~ARR_SIZE~0) ~ARR_SIZE~0) (+ (* (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) |ULTIMATE.start_main_~#array~0#1.offset|) 2) (* 2 |ULTIMATE.start_main_~sum~0#1|) (* 2 (* ~ARR_SIZE~0 ~ARR_SIZE~0))))} main_~row~0#1 := 0; {588#(and (or (= (+ (* ~ARR_SIZE~0 ~ARR_SIZE~0 ~ARR_SIZE~0) ~ARR_SIZE~0) (+ (* (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ |ULTIMATE.start_main_~#array~0#1.offset| (* |ULTIMATE.start_main_~row~0#1| (+ (- 17179869184) (* (mod ~ARR_SIZE~0 4294967296) 4))))) 2) (* 2 |ULTIMATE.start_main_~sum~0#1|) (* 2 (* ~ARR_SIZE~0 ~ARR_SIZE~0)))) (<= (mod ~ARR_SIZE~0 4294967296) 2147483647)) (or (= (+ (* ~ARR_SIZE~0 ~ARR_SIZE~0 ~ARR_SIZE~0) ~ARR_SIZE~0) (+ (* 2 (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~row~0#1|) |ULTIMATE.start_main_~#array~0#1.offset|))) (* 2 |ULTIMATE.start_main_~sum~0#1|) (* 2 (* ~ARR_SIZE~0 ~ARR_SIZE~0)))) (not (<= (mod ~ARR_SIZE~0 4294967296) 2147483647))))} is VALID [2022-02-20 14:24:17,844 INFO L290 TraceCheckUtils]: 10: Hoare triple {592#(= (+ (* ~ARR_SIZE~0 ~ARR_SIZE~0 ~ARR_SIZE~0) ~ARR_SIZE~0) (+ (* (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) |ULTIMATE.start_main_~#array~0#1.offset|) 2) (* 2 |ULTIMATE.start_main_~sum~0#1|) (* 2 (* ~ARR_SIZE~0 ~ARR_SIZE~0))))} assume !(main_~row~0#1 < ~ARR_SIZE~0); {592#(= (+ (* ~ARR_SIZE~0 ~ARR_SIZE~0 ~ARR_SIZE~0) ~ARR_SIZE~0) (+ (* (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) |ULTIMATE.start_main_~#array~0#1.offset|) 2) (* 2 |ULTIMATE.start_main_~sum~0#1|) (* 2 (* ~ARR_SIZE~0 ~ARR_SIZE~0))))} is VALID [2022-02-20 14:24:17,845 INFO L290 TraceCheckUtils]: 9: Hoare triple {592#(= (+ (* ~ARR_SIZE~0 ~ARR_SIZE~0 ~ARR_SIZE~0) ~ARR_SIZE~0) (+ (* (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) |ULTIMATE.start_main_~#array~0#1.offset|) 2) (* 2 |ULTIMATE.start_main_~sum~0#1|) (* 2 (* ~ARR_SIZE~0 ~ARR_SIZE~0))))} main_#t~post5#1 := main_~row~0#1;main_~row~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {592#(= (+ (* ~ARR_SIZE~0 ~ARR_SIZE~0 ~ARR_SIZE~0) ~ARR_SIZE~0) (+ (* (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) |ULTIMATE.start_main_~#array~0#1.offset|) 2) (* 2 |ULTIMATE.start_main_~sum~0#1|) (* 2 (* ~ARR_SIZE~0 ~ARR_SIZE~0))))} is VALID [2022-02-20 14:24:17,845 INFO L290 TraceCheckUtils]: 8: Hoare triple {602#(or (= (+ (* ~ARR_SIZE~0 ~ARR_SIZE~0 ~ARR_SIZE~0) ~ARR_SIZE~0) (+ (* (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) |ULTIMATE.start_main_~#array~0#1.offset|) 2) (* 2 |ULTIMATE.start_main_~sum~0#1|) (* 2 (* ~ARR_SIZE~0 ~ARR_SIZE~0)))) (< |ULTIMATE.start_main_~column~0#1| ~ARR_SIZE~0))} assume !(main_~column~0#1 < ~ARR_SIZE~0); {592#(= (+ (* ~ARR_SIZE~0 ~ARR_SIZE~0 ~ARR_SIZE~0) ~ARR_SIZE~0) (+ (* (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) |ULTIMATE.start_main_~#array~0#1.offset|) 2) (* 2 |ULTIMATE.start_main_~sum~0#1|) (* 2 (* ~ARR_SIZE~0 ~ARR_SIZE~0))))} is VALID [2022-02-20 14:24:17,846 INFO L290 TraceCheckUtils]: 7: Hoare triple {606#(or (= (+ (* ~ARR_SIZE~0 ~ARR_SIZE~0 ~ARR_SIZE~0) ~ARR_SIZE~0) (+ (* (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) |ULTIMATE.start_main_~#array~0#1.offset|) 2) (* 2 |ULTIMATE.start_main_~sum~0#1|) (* 2 (* ~ARR_SIZE~0 ~ARR_SIZE~0)))) (< (+ |ULTIMATE.start_main_~column~0#1| 1) ~ARR_SIZE~0))} main_#t~post6#1 := main_~column~0#1;main_~column~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {602#(or (= (+ (* ~ARR_SIZE~0 ~ARR_SIZE~0 ~ARR_SIZE~0) ~ARR_SIZE~0) (+ (* (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) |ULTIMATE.start_main_~#array~0#1.offset|) 2) (* 2 |ULTIMATE.start_main_~sum~0#1|) (* 2 (* ~ARR_SIZE~0 ~ARR_SIZE~0)))) (< |ULTIMATE.start_main_~column~0#1| ~ARR_SIZE~0))} is VALID [2022-02-20 14:24:17,851 INFO L290 TraceCheckUtils]: 6: Hoare triple {610#(or (and (= (+ (* 2 |ULTIMATE.start_main_~sum~0#1|) (* 2 (* ~ARR_SIZE~0 ~ARR_SIZE~0))) (+ (* ~ARR_SIZE~0 ~ARR_SIZE~0 ~ARR_SIZE~0) ~ARR_SIZE~0)) (= (* (* (mod ~ARR_SIZE~0 4294967296) |ULTIMATE.start_main_~row~0#1|) 4) (* 17179869180 |ULTIMATE.start_main_~row~0#1|))) (< (+ |ULTIMATE.start_main_~column~0#1| 1) ~ARR_SIZE~0))} assume main_~row~0#1 == main_~column~0#1;call write~int(0, main_~#array~0#1.base, main_~#array~0#1.offset + main_~row~0#1 * (4 * (if ~ARR_SIZE~0 % 4294967296 <= 2147483647 then ~ARR_SIZE~0 % 4294967296 else ~ARR_SIZE~0 % 4294967296 - 4294967296)) + 4 * main_~row~0#1, 4); {606#(or (= (+ (* ~ARR_SIZE~0 ~ARR_SIZE~0 ~ARR_SIZE~0) ~ARR_SIZE~0) (+ (* (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) |ULTIMATE.start_main_~#array~0#1.offset|) 2) (* 2 |ULTIMATE.start_main_~sum~0#1|) (* 2 (* ~ARR_SIZE~0 ~ARR_SIZE~0)))) (< (+ |ULTIMATE.start_main_~column~0#1| 1) ~ARR_SIZE~0))} is VALID [2022-02-20 14:24:17,856 INFO L290 TraceCheckUtils]: 5: Hoare triple {610#(or (and (= (+ (* 2 |ULTIMATE.start_main_~sum~0#1|) (* 2 (* ~ARR_SIZE~0 ~ARR_SIZE~0))) (+ (* ~ARR_SIZE~0 ~ARR_SIZE~0 ~ARR_SIZE~0) ~ARR_SIZE~0)) (= (* (* (mod ~ARR_SIZE~0 4294967296) |ULTIMATE.start_main_~row~0#1|) 4) (* 17179869180 |ULTIMATE.start_main_~row~0#1|))) (< (+ |ULTIMATE.start_main_~column~0#1| 1) ~ARR_SIZE~0))} assume !!(main_~column~0#1 < ~ARR_SIZE~0); {610#(or (and (= (+ (* 2 |ULTIMATE.start_main_~sum~0#1|) (* 2 (* ~ARR_SIZE~0 ~ARR_SIZE~0))) (+ (* ~ARR_SIZE~0 ~ARR_SIZE~0 ~ARR_SIZE~0) ~ARR_SIZE~0)) (= (* (* (mod ~ARR_SIZE~0 4294967296) |ULTIMATE.start_main_~row~0#1|) 4) (* 17179869180 |ULTIMATE.start_main_~row~0#1|))) (< (+ |ULTIMATE.start_main_~column~0#1| 1) ~ARR_SIZE~0))} is VALID [2022-02-20 14:24:17,857 INFO L290 TraceCheckUtils]: 4: Hoare triple {617#(forall ((~ARR_SIZE~0 Int)) (or (< 1 ~ARR_SIZE~0) (and (= (+ (* 2 |ULTIMATE.start_main_~sum~0#1|) (* 2 (* ~ARR_SIZE~0 ~ARR_SIZE~0))) (+ (* ~ARR_SIZE~0 ~ARR_SIZE~0 ~ARR_SIZE~0) ~ARR_SIZE~0)) (= (* (* (mod ~ARR_SIZE~0 4294967296) |ULTIMATE.start_main_~row~0#1|) 4) (* 17179869180 |ULTIMATE.start_main_~row~0#1|))) (not (< |ULTIMATE.start_main_~row~0#1| ~ARR_SIZE~0))))} assume !!(main_~row~0#1 < ~ARR_SIZE~0);main_~column~0#1 := 0; {610#(or (and (= (+ (* 2 |ULTIMATE.start_main_~sum~0#1|) (* 2 (* ~ARR_SIZE~0 ~ARR_SIZE~0))) (+ (* ~ARR_SIZE~0 ~ARR_SIZE~0 ~ARR_SIZE~0) ~ARR_SIZE~0)) (= (* (* (mod ~ARR_SIZE~0 4294967296) |ULTIMATE.start_main_~row~0#1|) 4) (* 17179869180 |ULTIMATE.start_main_~row~0#1|))) (< (+ |ULTIMATE.start_main_~column~0#1| 1) ~ARR_SIZE~0))} is VALID [2022-02-20 14:24:17,862 INFO L290 TraceCheckUtils]: 3: Hoare triple {488#true} assume { :end_inline_assume_abort_if_not } true;call main_~#array~0#1.base, main_~#array~0#1.offset := #Ultimate.allocOnStack(4 * (if ~ARR_SIZE~0 % 4294967296 <= 2147483647 then ~ARR_SIZE~0 % 4294967296 else ~ARR_SIZE~0 % 4294967296 - 4294967296) * (if ~ARR_SIZE~0 % 4294967296 <= 2147483647 then ~ARR_SIZE~0 % 4294967296 else ~ARR_SIZE~0 % 4294967296 - 4294967296));main_~row~0#1 := 0;main_~column~0#1 := 0;main_~sum~0#1 := 0;main_~row~0#1 := 0; {617#(forall ((~ARR_SIZE~0 Int)) (or (< 1 ~ARR_SIZE~0) (and (= (+ (* 2 |ULTIMATE.start_main_~sum~0#1|) (* 2 (* ~ARR_SIZE~0 ~ARR_SIZE~0))) (+ (* ~ARR_SIZE~0 ~ARR_SIZE~0 ~ARR_SIZE~0) ~ARR_SIZE~0)) (= (* (* (mod ~ARR_SIZE~0 4294967296) |ULTIMATE.start_main_~row~0#1|) 4) (* 17179869180 |ULTIMATE.start_main_~row~0#1|))) (not (< |ULTIMATE.start_main_~row~0#1| ~ARR_SIZE~0))))} is VALID [2022-02-20 14:24:17,862 INFO L290 TraceCheckUtils]: 2: Hoare triple {488#true} assume !(0 == assume_abort_if_not_~cond#1); {488#true} is VALID [2022-02-20 14:24:17,862 INFO L290 TraceCheckUtils]: 1: Hoare triple {488#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~post6#1, main_#t~post5#1, main_#t~mem9#1, main_#t~post8#1, main_#t~post7#1, main_~#array~0#1.base, main_~#array~0#1.offset, main_~row~0#1, main_~column~0#1, main_~sum~0#1;assume -32768 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 32767;~ARR_SIZE~0 := main_#t~nondet4#1;havoc main_#t~nondet4#1;assume { :begin_inline_assume_abort_if_not } true;assume_abort_if_not_#in~cond#1 := (if ~ARR_SIZE~0 > 0 then 1 else 0);havoc assume_abort_if_not_~cond#1;assume_abort_if_not_~cond#1 := assume_abort_if_not_#in~cond#1; {488#true} is VALID [2022-02-20 14:24:17,862 INFO L290 TraceCheckUtils]: 0: Hoare triple {488#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~ARR_SIZE~0 := 0; {488#true} is VALID [2022-02-20 14:24:17,863 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 0 proven. 4 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 14:24:17,863 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 14:24:17,863 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1144424146] [2022-02-20 14:24:17,863 WARN L317 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-02-20 14:24:17,863 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [2059348927] [2022-02-20 14:24:17,863 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [2059348927] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 14:24:17,863 INFO L191 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-02-20 14:24:17,863 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [11, 11] total 19 [2022-02-20 14:24:17,863 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [86975612] [2022-02-20 14:24:17,863 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-02-20 14:24:17,864 INFO L78 Accepts]: Start accepts. Automaton has has 19 states, 19 states have (on average 1.9473684210526316) internal successors, (37), 19 states have internal predecessors, (37), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 21 [2022-02-20 14:24:17,864 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 14:24:17,865 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 19 states, 19 states have (on average 1.9473684210526316) internal successors, (37), 19 states have internal predecessors, (37), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:24:17,911 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 37 edges. 37 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 14:24:17,912 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 19 states [2022-02-20 14:24:17,912 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 14:24:17,912 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 19 interpolants. [2022-02-20 14:24:17,912 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=78, Invalid=264, Unknown=0, NotChecked=0, Total=342 [2022-02-20 14:24:17,913 INFO L87 Difference]: Start difference. First operand 22 states and 26 transitions. Second operand has 19 states, 19 states have (on average 1.9473684210526316) internal successors, (37), 19 states have internal predecessors, (37), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:24:20,028 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 14:24:20,028 INFO L93 Difference]: Finished difference Result 87 states and 109 transitions. [2022-02-20 14:24:20,028 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 29 states. [2022-02-20 14:24:20,028 INFO L78 Accepts]: Start accepts. Automaton has has 19 states, 19 states have (on average 1.9473684210526316) internal successors, (37), 19 states have internal predecessors, (37), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 21 [2022-02-20 14:24:20,028 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 14:24:20,028 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 19 states, 19 states have (on average 1.9473684210526316) internal successors, (37), 19 states have internal predecessors, (37), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:24:20,030 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 29 states to 29 states and 104 transitions. [2022-02-20 14:24:20,030 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 19 states, 19 states have (on average 1.9473684210526316) internal successors, (37), 19 states have internal predecessors, (37), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:24:20,032 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 29 states to 29 states and 104 transitions. [2022-02-20 14:24:20,032 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 29 states and 104 transitions. [2022-02-20 14:24:20,150 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 104 edges. 104 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 14:24:20,152 INFO L225 Difference]: With dead ends: 87 [2022-02-20 14:24:20,152 INFO L226 Difference]: Without dead ends: 81 [2022-02-20 14:24:20,153 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 57 GetRequests, 22 SyntacticMatches, 1 SemanticMatches, 34 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 280 ImplicationChecksByTransitivity, 0.9s TimeCoverageRelationStatistics Valid=280, Invalid=980, Unknown=0, NotChecked=0, Total=1260 [2022-02-20 14:24:20,154 INFO L933 BasicCegarLoop]: 8 mSDtfsCounter, 90 mSDsluCounter, 60 mSDsCounter, 0 mSdLazyCounter, 318 mSolverCounterSat, 79 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.7s Time, 0 mProtectedPredicate, 0 mProtectedAction, 90 SdHoareTripleChecker+Valid, 68 SdHoareTripleChecker+Invalid, 450 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 79 IncrementalHoareTripleChecker+Valid, 318 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 53 IncrementalHoareTripleChecker+Unchecked, 0.7s IncrementalHoareTripleChecker+Time [2022-02-20 14:24:20,154 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [90 Valid, 68 Invalid, 450 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [79 Valid, 318 Invalid, 0 Unknown, 53 Unchecked, 0.7s Time] [2022-02-20 14:24:20,154 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 81 states. [2022-02-20 14:24:20,203 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 81 to 50. [2022-02-20 14:24:20,203 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 14:24:20,203 INFO L82 GeneralOperation]: Start isEquivalent. First operand 81 states. Second operand has 50 states, 49 states have (on average 1.346938775510204) internal successors, (66), 49 states have internal predecessors, (66), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:24:20,204 INFO L74 IsIncluded]: Start isIncluded. First operand 81 states. Second operand has 50 states, 49 states have (on average 1.346938775510204) internal successors, (66), 49 states have internal predecessors, (66), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:24:20,204 INFO L87 Difference]: Start difference. First operand 81 states. Second operand has 50 states, 49 states have (on average 1.346938775510204) internal successors, (66), 49 states have internal predecessors, (66), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:24:20,206 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 14:24:20,207 INFO L93 Difference]: Finished difference Result 81 states and 102 transitions. [2022-02-20 14:24:20,207 INFO L276 IsEmpty]: Start isEmpty. Operand 81 states and 102 transitions. [2022-02-20 14:24:20,207 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 14:24:20,207 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 14:24:20,208 INFO L74 IsIncluded]: Start isIncluded. First operand has 50 states, 49 states have (on average 1.346938775510204) internal successors, (66), 49 states have internal predecessors, (66), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 81 states. [2022-02-20 14:24:20,208 INFO L87 Difference]: Start difference. First operand has 50 states, 49 states have (on average 1.346938775510204) internal successors, (66), 49 states have internal predecessors, (66), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 81 states. [2022-02-20 14:24:20,210 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 14:24:20,210 INFO L93 Difference]: Finished difference Result 81 states and 102 transitions. [2022-02-20 14:24:20,210 INFO L276 IsEmpty]: Start isEmpty. Operand 81 states and 102 transitions. [2022-02-20 14:24:20,210 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 14:24:20,210 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 14:24:20,211 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 14:24:20,211 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 14:24:20,211 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 50 states, 49 states have (on average 1.346938775510204) internal successors, (66), 49 states have internal predecessors, (66), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:24:20,212 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 50 states to 50 states and 66 transitions. [2022-02-20 14:24:20,212 INFO L78 Accepts]: Start accepts. Automaton has 50 states and 66 transitions. Word has length 21 [2022-02-20 14:24:20,212 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 14:24:20,212 INFO L470 AbstractCegarLoop]: Abstraction has 50 states and 66 transitions. [2022-02-20 14:24:20,213 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 19 states, 19 states have (on average 1.9473684210526316) internal successors, (37), 19 states have internal predecessors, (37), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:24:20,213 INFO L276 IsEmpty]: Start isEmpty. Operand 50 states and 66 transitions. [2022-02-20 14:24:20,213 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 24 [2022-02-20 14:24:20,213 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 14:24:20,214 INFO L514 BasicCegarLoop]: trace histogram [2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 14:24:20,230 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Ended with exit code 0 [2022-02-20 14:24:20,423 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3,4 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 14:24:20,424 INFO L402 AbstractCegarLoop]: === Iteration 5 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 14:24:20,424 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 14:24:20,424 INFO L85 PathProgramCache]: Analyzing trace with hash 1881533531, now seen corresponding path program 2 times [2022-02-20 14:24:20,424 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 14:24:20,424 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1335386647] [2022-02-20 14:24:20,425 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 14:24:20,425 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 14:24:20,445 ERROR L252 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-02-20 14:24:20,446 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [291689288] [2022-02-20 14:24:20,446 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-02-20 14:24:20,446 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 14:24:20,446 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 14:24:20,447 INFO L229 MonitoredProcess]: Starting monitored process 5 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-02-20 14:24:20,448 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Waiting until timeout for monitored process [2022-02-20 14:24:20,531 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-02-20 14:24:20,532 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-02-20 14:24:20,533 INFO L263 TraceCheckSpWp]: Trace formula consists of 94 conjuncts, 6 conjunts are in the unsatisfiable core [2022-02-20 14:24:20,543 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 14:24:20,544 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 14:24:20,694 INFO L290 TraceCheckUtils]: 0: Hoare triple {1021#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~ARR_SIZE~0 := 0; {1021#true} is VALID [2022-02-20 14:24:20,694 INFO L290 TraceCheckUtils]: 1: Hoare triple {1021#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~post6#1, main_#t~post5#1, main_#t~mem9#1, main_#t~post8#1, main_#t~post7#1, main_~#array~0#1.base, main_~#array~0#1.offset, main_~row~0#1, main_~column~0#1, main_~sum~0#1;assume -32768 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 32767;~ARR_SIZE~0 := main_#t~nondet4#1;havoc main_#t~nondet4#1;assume { :begin_inline_assume_abort_if_not } true;assume_abort_if_not_#in~cond#1 := (if ~ARR_SIZE~0 > 0 then 1 else 0);havoc assume_abort_if_not_~cond#1;assume_abort_if_not_~cond#1 := assume_abort_if_not_#in~cond#1; {1021#true} is VALID [2022-02-20 14:24:20,694 INFO L290 TraceCheckUtils]: 2: Hoare triple {1021#true} assume !(0 == assume_abort_if_not_~cond#1); {1021#true} is VALID [2022-02-20 14:24:20,694 INFO L290 TraceCheckUtils]: 3: Hoare triple {1021#true} assume { :end_inline_assume_abort_if_not } true;call main_~#array~0#1.base, main_~#array~0#1.offset := #Ultimate.allocOnStack(4 * (if ~ARR_SIZE~0 % 4294967296 <= 2147483647 then ~ARR_SIZE~0 % 4294967296 else ~ARR_SIZE~0 % 4294967296 - 4294967296) * (if ~ARR_SIZE~0 % 4294967296 <= 2147483647 then ~ARR_SIZE~0 % 4294967296 else ~ARR_SIZE~0 % 4294967296 - 4294967296));main_~row~0#1 := 0;main_~column~0#1 := 0;main_~sum~0#1 := 0;main_~row~0#1 := 0; {1021#true} is VALID [2022-02-20 14:24:20,695 INFO L290 TraceCheckUtils]: 4: Hoare triple {1021#true} assume !!(main_~row~0#1 < ~ARR_SIZE~0);main_~column~0#1 := 0; {1038#(<= |ULTIMATE.start_main_~column~0#1| 0)} is VALID [2022-02-20 14:24:20,695 INFO L290 TraceCheckUtils]: 5: Hoare triple {1038#(<= |ULTIMATE.start_main_~column~0#1| 0)} assume !!(main_~column~0#1 < ~ARR_SIZE~0); {1038#(<= |ULTIMATE.start_main_~column~0#1| 0)} is VALID [2022-02-20 14:24:20,695 INFO L290 TraceCheckUtils]: 6: Hoare triple {1038#(<= |ULTIMATE.start_main_~column~0#1| 0)} assume main_~row~0#1 == main_~column~0#1;call write~int(0, main_~#array~0#1.base, main_~#array~0#1.offset + main_~row~0#1 * (4 * (if ~ARR_SIZE~0 % 4294967296 <= 2147483647 then ~ARR_SIZE~0 % 4294967296 else ~ARR_SIZE~0 % 4294967296 - 4294967296)) + 4 * main_~row~0#1, 4); {1038#(<= |ULTIMATE.start_main_~column~0#1| 0)} is VALID [2022-02-20 14:24:20,696 INFO L290 TraceCheckUtils]: 7: Hoare triple {1038#(<= |ULTIMATE.start_main_~column~0#1| 0)} main_#t~post6#1 := main_~column~0#1;main_~column~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {1048#(<= |ULTIMATE.start_main_~column~0#1| 1)} is VALID [2022-02-20 14:24:20,697 INFO L290 TraceCheckUtils]: 8: Hoare triple {1048#(<= |ULTIMATE.start_main_~column~0#1| 1)} assume !(main_~column~0#1 < ~ARR_SIZE~0); {1052#(<= ~ARR_SIZE~0 1)} is VALID [2022-02-20 14:24:20,697 INFO L290 TraceCheckUtils]: 9: Hoare triple {1052#(<= ~ARR_SIZE~0 1)} main_#t~post5#1 := main_~row~0#1;main_~row~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {1052#(<= ~ARR_SIZE~0 1)} is VALID [2022-02-20 14:24:20,697 INFO L290 TraceCheckUtils]: 10: Hoare triple {1052#(<= ~ARR_SIZE~0 1)} assume !(main_~row~0#1 < ~ARR_SIZE~0); {1052#(<= ~ARR_SIZE~0 1)} is VALID [2022-02-20 14:24:20,697 INFO L290 TraceCheckUtils]: 11: Hoare triple {1052#(<= ~ARR_SIZE~0 1)} main_~row~0#1 := 0; {1052#(<= ~ARR_SIZE~0 1)} is VALID [2022-02-20 14:24:20,698 INFO L290 TraceCheckUtils]: 12: Hoare triple {1052#(<= ~ARR_SIZE~0 1)} assume !!(main_~row~0#1 < ~ARR_SIZE~0);main_~column~0#1 := 0; {1065#(and (<= ~ARR_SIZE~0 1) (<= 0 |ULTIMATE.start_main_~column~0#1|))} is VALID [2022-02-20 14:24:20,698 INFO L290 TraceCheckUtils]: 13: Hoare triple {1065#(and (<= ~ARR_SIZE~0 1) (<= 0 |ULTIMATE.start_main_~column~0#1|))} assume !!(main_~column~0#1 < ~ARR_SIZE~0);call main_#t~mem9#1 := read~int(main_~#array~0#1.base, main_~#array~0#1.offset + main_~row~0#1 * (4 * (if ~ARR_SIZE~0 % 4294967296 <= 2147483647 then ~ARR_SIZE~0 % 4294967296 else ~ARR_SIZE~0 % 4294967296 - 4294967296)) + 4 * main_~column~0#1, 4);main_~sum~0#1 := main_~sum~0#1 + main_#t~mem9#1;havoc main_#t~mem9#1; {1065#(and (<= ~ARR_SIZE~0 1) (<= 0 |ULTIMATE.start_main_~column~0#1|))} is VALID [2022-02-20 14:24:20,699 INFO L290 TraceCheckUtils]: 14: Hoare triple {1065#(and (<= ~ARR_SIZE~0 1) (<= 0 |ULTIMATE.start_main_~column~0#1|))} main_#t~post8#1 := main_~column~0#1;main_~column~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; {1072#(and (<= ~ARR_SIZE~0 1) (<= 1 |ULTIMATE.start_main_~column~0#1|))} is VALID [2022-02-20 14:24:20,700 INFO L290 TraceCheckUtils]: 15: Hoare triple {1072#(and (<= ~ARR_SIZE~0 1) (<= 1 |ULTIMATE.start_main_~column~0#1|))} assume !!(main_~column~0#1 < ~ARR_SIZE~0);call main_#t~mem9#1 := read~int(main_~#array~0#1.base, main_~#array~0#1.offset + main_~row~0#1 * (4 * (if ~ARR_SIZE~0 % 4294967296 <= 2147483647 then ~ARR_SIZE~0 % 4294967296 else ~ARR_SIZE~0 % 4294967296 - 4294967296)) + 4 * main_~column~0#1, 4);main_~sum~0#1 := main_~sum~0#1 + main_#t~mem9#1;havoc main_#t~mem9#1; {1022#false} is VALID [2022-02-20 14:24:20,700 INFO L290 TraceCheckUtils]: 16: Hoare triple {1022#false} main_#t~post8#1 := main_~column~0#1;main_~column~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; {1022#false} is VALID [2022-02-20 14:24:20,700 INFO L290 TraceCheckUtils]: 17: Hoare triple {1022#false} assume !(main_~column~0#1 < ~ARR_SIZE~0); {1022#false} is VALID [2022-02-20 14:24:20,700 INFO L290 TraceCheckUtils]: 18: Hoare triple {1022#false} main_#t~post7#1 := main_~row~0#1;main_~row~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {1022#false} is VALID [2022-02-20 14:24:20,701 INFO L290 TraceCheckUtils]: 19: Hoare triple {1022#false} assume !(main_~row~0#1 < ~ARR_SIZE~0); {1022#false} is VALID [2022-02-20 14:24:20,701 INFO L290 TraceCheckUtils]: 20: Hoare triple {1022#false} assume { :begin_inline___VERIFIER_assert } true;__VERIFIER_assert_#in~cond#1 := (if 2 * main_~sum~0#1 == ~ARR_SIZE~0 * (~ARR_SIZE~0 - 1) * (~ARR_SIZE~0 - 1) then 1 else 0);havoc __VERIFIER_assert_~cond#1;__VERIFIER_assert_~cond#1 := __VERIFIER_assert_#in~cond#1; {1022#false} is VALID [2022-02-20 14:24:20,701 INFO L290 TraceCheckUtils]: 21: Hoare triple {1022#false} assume 0 == __VERIFIER_assert_~cond#1; {1022#false} is VALID [2022-02-20 14:24:20,701 INFO L290 TraceCheckUtils]: 22: Hoare triple {1022#false} assume !false; {1022#false} is VALID [2022-02-20 14:24:20,701 INFO L134 CoverageAnalysis]: Checked inductivity of 7 backedges. 6 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 14:24:20,701 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 14:24:20,811 INFO L290 TraceCheckUtils]: 22: Hoare triple {1022#false} assume !false; {1022#false} is VALID [2022-02-20 14:24:20,812 INFO L290 TraceCheckUtils]: 21: Hoare triple {1022#false} assume 0 == __VERIFIER_assert_~cond#1; {1022#false} is VALID [2022-02-20 14:24:20,812 INFO L290 TraceCheckUtils]: 20: Hoare triple {1022#false} assume { :begin_inline___VERIFIER_assert } true;__VERIFIER_assert_#in~cond#1 := (if 2 * main_~sum~0#1 == ~ARR_SIZE~0 * (~ARR_SIZE~0 - 1) * (~ARR_SIZE~0 - 1) then 1 else 0);havoc __VERIFIER_assert_~cond#1;__VERIFIER_assert_~cond#1 := __VERIFIER_assert_#in~cond#1; {1022#false} is VALID [2022-02-20 14:24:20,812 INFO L290 TraceCheckUtils]: 19: Hoare triple {1022#false} assume !(main_~row~0#1 < ~ARR_SIZE~0); {1022#false} is VALID [2022-02-20 14:24:20,812 INFO L290 TraceCheckUtils]: 18: Hoare triple {1022#false} main_#t~post7#1 := main_~row~0#1;main_~row~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {1022#false} is VALID [2022-02-20 14:24:20,812 INFO L290 TraceCheckUtils]: 17: Hoare triple {1022#false} assume !(main_~column~0#1 < ~ARR_SIZE~0); {1022#false} is VALID [2022-02-20 14:24:20,812 INFO L290 TraceCheckUtils]: 16: Hoare triple {1022#false} main_#t~post8#1 := main_~column~0#1;main_~column~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; {1022#false} is VALID [2022-02-20 14:24:20,814 INFO L290 TraceCheckUtils]: 15: Hoare triple {1118#(not (< |ULTIMATE.start_main_~column~0#1| ~ARR_SIZE~0))} assume !!(main_~column~0#1 < ~ARR_SIZE~0);call main_#t~mem9#1 := read~int(main_~#array~0#1.base, main_~#array~0#1.offset + main_~row~0#1 * (4 * (if ~ARR_SIZE~0 % 4294967296 <= 2147483647 then ~ARR_SIZE~0 % 4294967296 else ~ARR_SIZE~0 % 4294967296 - 4294967296)) + 4 * main_~column~0#1, 4);main_~sum~0#1 := main_~sum~0#1 + main_#t~mem9#1;havoc main_#t~mem9#1; {1022#false} is VALID [2022-02-20 14:24:20,815 INFO L290 TraceCheckUtils]: 14: Hoare triple {1122#(<= ~ARR_SIZE~0 (+ |ULTIMATE.start_main_~column~0#1| 1))} main_#t~post8#1 := main_~column~0#1;main_~column~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; {1118#(not (< |ULTIMATE.start_main_~column~0#1| ~ARR_SIZE~0))} is VALID [2022-02-20 14:24:20,815 INFO L290 TraceCheckUtils]: 13: Hoare triple {1122#(<= ~ARR_SIZE~0 (+ |ULTIMATE.start_main_~column~0#1| 1))} assume !!(main_~column~0#1 < ~ARR_SIZE~0);call main_#t~mem9#1 := read~int(main_~#array~0#1.base, main_~#array~0#1.offset + main_~row~0#1 * (4 * (if ~ARR_SIZE~0 % 4294967296 <= 2147483647 then ~ARR_SIZE~0 % 4294967296 else ~ARR_SIZE~0 % 4294967296 - 4294967296)) + 4 * main_~column~0#1, 4);main_~sum~0#1 := main_~sum~0#1 + main_#t~mem9#1;havoc main_#t~mem9#1; {1122#(<= ~ARR_SIZE~0 (+ |ULTIMATE.start_main_~column~0#1| 1))} is VALID [2022-02-20 14:24:20,816 INFO L290 TraceCheckUtils]: 12: Hoare triple {1052#(<= ~ARR_SIZE~0 1)} assume !!(main_~row~0#1 < ~ARR_SIZE~0);main_~column~0#1 := 0; {1122#(<= ~ARR_SIZE~0 (+ |ULTIMATE.start_main_~column~0#1| 1))} is VALID [2022-02-20 14:24:20,816 INFO L290 TraceCheckUtils]: 11: Hoare triple {1052#(<= ~ARR_SIZE~0 1)} main_~row~0#1 := 0; {1052#(<= ~ARR_SIZE~0 1)} is VALID [2022-02-20 14:24:20,816 INFO L290 TraceCheckUtils]: 10: Hoare triple {1052#(<= ~ARR_SIZE~0 1)} assume !(main_~row~0#1 < ~ARR_SIZE~0); {1052#(<= ~ARR_SIZE~0 1)} is VALID [2022-02-20 14:24:20,818 INFO L290 TraceCheckUtils]: 9: Hoare triple {1052#(<= ~ARR_SIZE~0 1)} main_#t~post5#1 := main_~row~0#1;main_~row~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {1052#(<= ~ARR_SIZE~0 1)} is VALID [2022-02-20 14:24:20,819 INFO L290 TraceCheckUtils]: 8: Hoare triple {1048#(<= |ULTIMATE.start_main_~column~0#1| 1)} assume !(main_~column~0#1 < ~ARR_SIZE~0); {1052#(<= ~ARR_SIZE~0 1)} is VALID [2022-02-20 14:24:20,820 INFO L290 TraceCheckUtils]: 7: Hoare triple {1038#(<= |ULTIMATE.start_main_~column~0#1| 0)} main_#t~post6#1 := main_~column~0#1;main_~column~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {1048#(<= |ULTIMATE.start_main_~column~0#1| 1)} is VALID [2022-02-20 14:24:20,820 INFO L290 TraceCheckUtils]: 6: Hoare triple {1038#(<= |ULTIMATE.start_main_~column~0#1| 0)} assume main_~row~0#1 == main_~column~0#1;call write~int(0, main_~#array~0#1.base, main_~#array~0#1.offset + main_~row~0#1 * (4 * (if ~ARR_SIZE~0 % 4294967296 <= 2147483647 then ~ARR_SIZE~0 % 4294967296 else ~ARR_SIZE~0 % 4294967296 - 4294967296)) + 4 * main_~row~0#1, 4); {1038#(<= |ULTIMATE.start_main_~column~0#1| 0)} is VALID [2022-02-20 14:24:20,821 INFO L290 TraceCheckUtils]: 5: Hoare triple {1038#(<= |ULTIMATE.start_main_~column~0#1| 0)} assume !!(main_~column~0#1 < ~ARR_SIZE~0); {1038#(<= |ULTIMATE.start_main_~column~0#1| 0)} is VALID [2022-02-20 14:24:20,822 INFO L290 TraceCheckUtils]: 4: Hoare triple {1021#true} assume !!(main_~row~0#1 < ~ARR_SIZE~0);main_~column~0#1 := 0; {1038#(<= |ULTIMATE.start_main_~column~0#1| 0)} is VALID [2022-02-20 14:24:20,822 INFO L290 TraceCheckUtils]: 3: Hoare triple {1021#true} assume { :end_inline_assume_abort_if_not } true;call main_~#array~0#1.base, main_~#array~0#1.offset := #Ultimate.allocOnStack(4 * (if ~ARR_SIZE~0 % 4294967296 <= 2147483647 then ~ARR_SIZE~0 % 4294967296 else ~ARR_SIZE~0 % 4294967296 - 4294967296) * (if ~ARR_SIZE~0 % 4294967296 <= 2147483647 then ~ARR_SIZE~0 % 4294967296 else ~ARR_SIZE~0 % 4294967296 - 4294967296));main_~row~0#1 := 0;main_~column~0#1 := 0;main_~sum~0#1 := 0;main_~row~0#1 := 0; {1021#true} is VALID [2022-02-20 14:24:20,822 INFO L290 TraceCheckUtils]: 2: Hoare triple {1021#true} assume !(0 == assume_abort_if_not_~cond#1); {1021#true} is VALID [2022-02-20 14:24:20,822 INFO L290 TraceCheckUtils]: 1: Hoare triple {1021#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~post6#1, main_#t~post5#1, main_#t~mem9#1, main_#t~post8#1, main_#t~post7#1, main_~#array~0#1.base, main_~#array~0#1.offset, main_~row~0#1, main_~column~0#1, main_~sum~0#1;assume -32768 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 32767;~ARR_SIZE~0 := main_#t~nondet4#1;havoc main_#t~nondet4#1;assume { :begin_inline_assume_abort_if_not } true;assume_abort_if_not_#in~cond#1 := (if ~ARR_SIZE~0 > 0 then 1 else 0);havoc assume_abort_if_not_~cond#1;assume_abort_if_not_~cond#1 := assume_abort_if_not_#in~cond#1; {1021#true} is VALID [2022-02-20 14:24:20,822 INFO L290 TraceCheckUtils]: 0: Hoare triple {1021#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~ARR_SIZE~0 := 0; {1021#true} is VALID [2022-02-20 14:24:20,823 INFO L134 CoverageAnalysis]: Checked inductivity of 7 backedges. 6 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 14:24:20,823 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 14:24:20,823 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1335386647] [2022-02-20 14:24:20,823 WARN L317 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-02-20 14:24:20,823 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [291689288] [2022-02-20 14:24:20,823 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [291689288] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 14:24:20,823 INFO L191 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-02-20 14:24:20,823 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 7] total 9 [2022-02-20 14:24:20,824 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2094559979] [2022-02-20 14:24:20,824 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-02-20 14:24:20,824 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 3.0) internal successors, (27), 9 states have internal predecessors, (27), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 23 [2022-02-20 14:24:20,824 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 14:24:20,824 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 9 states, 9 states have (on average 3.0) internal successors, (27), 9 states have internal predecessors, (27), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:24:20,843 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 27 edges. 27 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 14:24:20,843 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-02-20 14:24:20,843 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 14:24:20,843 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-02-20 14:24:20,843 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=23, Invalid=49, Unknown=0, NotChecked=0, Total=72 [2022-02-20 14:24:20,844 INFO L87 Difference]: Start difference. First operand 50 states and 66 transitions. Second operand has 9 states, 9 states have (on average 3.0) internal successors, (27), 9 states have internal predecessors, (27), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:24:21,173 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 14:24:21,173 INFO L93 Difference]: Finished difference Result 120 states and 155 transitions. [2022-02-20 14:24:21,173 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-02-20 14:24:21,173 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 3.0) internal successors, (27), 9 states have internal predecessors, (27), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 23 [2022-02-20 14:24:21,173 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 14:24:21,173 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 3.0) internal successors, (27), 9 states have internal predecessors, (27), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:24:21,174 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 85 transitions. [2022-02-20 14:24:21,174 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 3.0) internal successors, (27), 9 states have internal predecessors, (27), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:24:21,175 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 85 transitions. [2022-02-20 14:24:21,175 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 9 states and 85 transitions. [2022-02-20 14:24:21,234 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 85 edges. 85 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 14:24:21,235 INFO L225 Difference]: With dead ends: 120 [2022-02-20 14:24:21,236 INFO L226 Difference]: Without dead ends: 83 [2022-02-20 14:24:21,236 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 47 GetRequests, 37 SyntacticMatches, 0 SemanticMatches, 10 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 13 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=45, Invalid=87, Unknown=0, NotChecked=0, Total=132 [2022-02-20 14:24:21,236 INFO L933 BasicCegarLoop]: 14 mSDtfsCounter, 83 mSDsluCounter, 33 mSDsCounter, 0 mSdLazyCounter, 105 mSolverCounterSat, 31 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 83 SdHoareTripleChecker+Valid, 47 SdHoareTripleChecker+Invalid, 136 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 31 IncrementalHoareTripleChecker+Valid, 105 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 14:24:21,237 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [83 Valid, 47 Invalid, 136 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [31 Valid, 105 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 14:24:21,237 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 83 states. [2022-02-20 14:24:21,328 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 83 to 60. [2022-02-20 14:24:21,328 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 14:24:21,328 INFO L82 GeneralOperation]: Start isEquivalent. First operand 83 states. Second operand has 60 states, 59 states have (on average 1.2881355932203389) internal successors, (76), 59 states have internal predecessors, (76), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:24:21,329 INFO L74 IsIncluded]: Start isIncluded. First operand 83 states. Second operand has 60 states, 59 states have (on average 1.2881355932203389) internal successors, (76), 59 states have internal predecessors, (76), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:24:21,329 INFO L87 Difference]: Start difference. First operand 83 states. Second operand has 60 states, 59 states have (on average 1.2881355932203389) internal successors, (76), 59 states have internal predecessors, (76), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:24:21,331 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 14:24:21,331 INFO L93 Difference]: Finished difference Result 83 states and 101 transitions. [2022-02-20 14:24:21,332 INFO L276 IsEmpty]: Start isEmpty. Operand 83 states and 101 transitions. [2022-02-20 14:24:21,333 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 14:24:21,333 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 14:24:21,333 INFO L74 IsIncluded]: Start isIncluded. First operand has 60 states, 59 states have (on average 1.2881355932203389) internal successors, (76), 59 states have internal predecessors, (76), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 83 states. [2022-02-20 14:24:21,333 INFO L87 Difference]: Start difference. First operand has 60 states, 59 states have (on average 1.2881355932203389) internal successors, (76), 59 states have internal predecessors, (76), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 83 states. [2022-02-20 14:24:21,336 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 14:24:21,336 INFO L93 Difference]: Finished difference Result 83 states and 101 transitions. [2022-02-20 14:24:21,337 INFO L276 IsEmpty]: Start isEmpty. Operand 83 states and 101 transitions. [2022-02-20 14:24:21,340 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 14:24:21,341 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 14:24:21,341 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 14:24:21,341 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 14:24:21,341 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 60 states, 59 states have (on average 1.2881355932203389) internal successors, (76), 59 states have internal predecessors, (76), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:24:21,343 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 60 states to 60 states and 76 transitions. [2022-02-20 14:24:21,343 INFO L78 Accepts]: Start accepts. Automaton has 60 states and 76 transitions. Word has length 23 [2022-02-20 14:24:21,343 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 14:24:21,343 INFO L470 AbstractCegarLoop]: Abstraction has 60 states and 76 transitions. [2022-02-20 14:24:21,343 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 9 states have (on average 3.0) internal successors, (27), 9 states have internal predecessors, (27), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:24:21,344 INFO L276 IsEmpty]: Start isEmpty. Operand 60 states and 76 transitions. [2022-02-20 14:24:21,345 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 25 [2022-02-20 14:24:21,345 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 14:24:21,345 INFO L514 BasicCegarLoop]: trace histogram [2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 14:24:21,351 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Forceful destruction successful, exit code 0 [2022-02-20 14:24:21,549 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4,5 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 14:24:21,550 INFO L402 AbstractCegarLoop]: === Iteration 6 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 14:24:21,550 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 14:24:21,550 INFO L85 PathProgramCache]: Analyzing trace with hash -1532144674, now seen corresponding path program 3 times [2022-02-20 14:24:21,550 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 14:24:21,550 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1764778138] [2022-02-20 14:24:21,551 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 14:24:21,551 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 14:24:21,567 ERROR L252 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-02-20 14:24:21,567 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1081164275] [2022-02-20 14:24:21,567 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2022-02-20 14:24:21,567 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 14:24:21,568 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 14:24:21,569 INFO L229 MonitoredProcess]: Starting monitored process 6 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-02-20 14:24:21,570 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Waiting until timeout for monitored process [2022-02-20 14:24:21,645 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 3 check-sat command(s) [2022-02-20 14:24:21,645 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-02-20 14:24:21,646 INFO L263 TraceCheckSpWp]: Trace formula consists of 89 conjuncts, 20 conjunts are in the unsatisfiable core [2022-02-20 14:24:21,655 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 14:24:21,656 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 14:24:21,745 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 37 treesize of output 32 [2022-02-20 14:24:21,749 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 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 7 [2022-02-20 14:24:21,754 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 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 7 [2022-02-20 14:24:21,907 INFO L356 Elim1Store]: treesize reduction 54, result has 11.5 percent of original size [2022-02-20 14:24:21,907 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 3 select indices, 3 select index equivalence classes, 0 disjoint index pairs (out of 3 index pairs), introduced 3 new quantified variables, introduced 3 case distinctions, treesize of input 54 treesize of output 30 [2022-02-20 14:24:22,087 INFO L290 TraceCheckUtils]: 0: Hoare triple {1593#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~ARR_SIZE~0 := 0; {1593#true} is VALID [2022-02-20 14:24:22,088 INFO L290 TraceCheckUtils]: 1: Hoare triple {1593#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~post6#1, main_#t~post5#1, main_#t~mem9#1, main_#t~post8#1, main_#t~post7#1, main_~#array~0#1.base, main_~#array~0#1.offset, main_~row~0#1, main_~column~0#1, main_~sum~0#1;assume -32768 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 32767;~ARR_SIZE~0 := main_#t~nondet4#1;havoc main_#t~nondet4#1;assume { :begin_inline_assume_abort_if_not } true;assume_abort_if_not_#in~cond#1 := (if ~ARR_SIZE~0 > 0 then 1 else 0);havoc assume_abort_if_not_~cond#1;assume_abort_if_not_~cond#1 := assume_abort_if_not_#in~cond#1; {1593#true} is VALID [2022-02-20 14:24:22,088 INFO L290 TraceCheckUtils]: 2: Hoare triple {1593#true} assume !(0 == assume_abort_if_not_~cond#1); {1593#true} is VALID [2022-02-20 14:24:22,089 INFO L290 TraceCheckUtils]: 3: Hoare triple {1593#true} assume { :end_inline_assume_abort_if_not } true;call main_~#array~0#1.base, main_~#array~0#1.offset := #Ultimate.allocOnStack(4 * (if ~ARR_SIZE~0 % 4294967296 <= 2147483647 then ~ARR_SIZE~0 % 4294967296 else ~ARR_SIZE~0 % 4294967296 - 4294967296) * (if ~ARR_SIZE~0 % 4294967296 <= 2147483647 then ~ARR_SIZE~0 % 4294967296 else ~ARR_SIZE~0 % 4294967296 - 4294967296));main_~row~0#1 := 0;main_~column~0#1 := 0;main_~sum~0#1 := 0;main_~row~0#1 := 0; {1607#(and (= |ULTIMATE.start_main_~sum~0#1| 0) (= |ULTIMATE.start_main_~row~0#1| 0))} is VALID [2022-02-20 14:24:22,089 INFO L290 TraceCheckUtils]: 4: Hoare triple {1607#(and (= |ULTIMATE.start_main_~sum~0#1| 0) (= |ULTIMATE.start_main_~row~0#1| 0))} assume !!(main_~row~0#1 < ~ARR_SIZE~0);main_~column~0#1 := 0; {1611#(and (= |ULTIMATE.start_main_~sum~0#1| 0) (< |ULTIMATE.start_main_~row~0#1| ~ARR_SIZE~0) (= |ULTIMATE.start_main_~row~0#1| 0))} is VALID [2022-02-20 14:24:22,090 INFO L290 TraceCheckUtils]: 5: Hoare triple {1611#(and (= |ULTIMATE.start_main_~sum~0#1| 0) (< |ULTIMATE.start_main_~row~0#1| ~ARR_SIZE~0) (= |ULTIMATE.start_main_~row~0#1| 0))} assume !!(main_~column~0#1 < ~ARR_SIZE~0); {1611#(and (= |ULTIMATE.start_main_~sum~0#1| 0) (< |ULTIMATE.start_main_~row~0#1| ~ARR_SIZE~0) (= |ULTIMATE.start_main_~row~0#1| 0))} is VALID [2022-02-20 14:24:22,091 INFO L290 TraceCheckUtils]: 6: Hoare triple {1611#(and (= |ULTIMATE.start_main_~sum~0#1| 0) (< |ULTIMATE.start_main_~row~0#1| ~ARR_SIZE~0) (= |ULTIMATE.start_main_~row~0#1| 0))} assume main_~row~0#1 == main_~column~0#1;call write~int(0, main_~#array~0#1.base, main_~#array~0#1.offset + main_~row~0#1 * (4 * (if ~ARR_SIZE~0 % 4294967296 <= 2147483647 then ~ARR_SIZE~0 % 4294967296 else ~ARR_SIZE~0 % 4294967296 - 4294967296)) + 4 * main_~row~0#1, 4); {1611#(and (= |ULTIMATE.start_main_~sum~0#1| 0) (< |ULTIMATE.start_main_~row~0#1| ~ARR_SIZE~0) (= |ULTIMATE.start_main_~row~0#1| 0))} is VALID [2022-02-20 14:24:22,091 INFO L290 TraceCheckUtils]: 7: Hoare triple {1611#(and (= |ULTIMATE.start_main_~sum~0#1| 0) (< |ULTIMATE.start_main_~row~0#1| ~ARR_SIZE~0) (= |ULTIMATE.start_main_~row~0#1| 0))} main_#t~post6#1 := main_~column~0#1;main_~column~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {1611#(and (= |ULTIMATE.start_main_~sum~0#1| 0) (< |ULTIMATE.start_main_~row~0#1| ~ARR_SIZE~0) (= |ULTIMATE.start_main_~row~0#1| 0))} is VALID [2022-02-20 14:24:22,091 INFO L290 TraceCheckUtils]: 8: Hoare triple {1611#(and (= |ULTIMATE.start_main_~sum~0#1| 0) (< |ULTIMATE.start_main_~row~0#1| ~ARR_SIZE~0) (= |ULTIMATE.start_main_~row~0#1| 0))} assume !!(main_~column~0#1 < ~ARR_SIZE~0); {1611#(and (= |ULTIMATE.start_main_~sum~0#1| 0) (< |ULTIMATE.start_main_~row~0#1| ~ARR_SIZE~0) (= |ULTIMATE.start_main_~row~0#1| 0))} is VALID [2022-02-20 14:24:22,092 INFO L290 TraceCheckUtils]: 9: Hoare triple {1611#(and (= |ULTIMATE.start_main_~sum~0#1| 0) (< |ULTIMATE.start_main_~row~0#1| ~ARR_SIZE~0) (= |ULTIMATE.start_main_~row~0#1| 0))} assume main_~row~0#1 == main_~column~0#1;call write~int(0, main_~#array~0#1.base, main_~#array~0#1.offset + main_~row~0#1 * (4 * (if ~ARR_SIZE~0 % 4294967296 <= 2147483647 then ~ARR_SIZE~0 % 4294967296 else ~ARR_SIZE~0 % 4294967296 - 4294967296)) + 4 * main_~row~0#1, 4); {1627#(and (< 0 ~ARR_SIZE~0) (= |ULTIMATE.start_main_~sum~0#1| 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) |ULTIMATE.start_main_~#array~0#1.offset|) 0))} is VALID [2022-02-20 14:24:22,092 INFO L290 TraceCheckUtils]: 10: Hoare triple {1627#(and (< 0 ~ARR_SIZE~0) (= |ULTIMATE.start_main_~sum~0#1| 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) |ULTIMATE.start_main_~#array~0#1.offset|) 0))} main_#t~post6#1 := main_~column~0#1;main_~column~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {1627#(and (< 0 ~ARR_SIZE~0) (= |ULTIMATE.start_main_~sum~0#1| 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) |ULTIMATE.start_main_~#array~0#1.offset|) 0))} is VALID [2022-02-20 14:24:22,093 INFO L290 TraceCheckUtils]: 11: Hoare triple {1627#(and (< 0 ~ARR_SIZE~0) (= |ULTIMATE.start_main_~sum~0#1| 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) |ULTIMATE.start_main_~#array~0#1.offset|) 0))} assume !(main_~column~0#1 < ~ARR_SIZE~0); {1627#(and (< 0 ~ARR_SIZE~0) (= |ULTIMATE.start_main_~sum~0#1| 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) |ULTIMATE.start_main_~#array~0#1.offset|) 0))} is VALID [2022-02-20 14:24:22,093 INFO L290 TraceCheckUtils]: 12: Hoare triple {1627#(and (< 0 ~ARR_SIZE~0) (= |ULTIMATE.start_main_~sum~0#1| 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) |ULTIMATE.start_main_~#array~0#1.offset|) 0))} main_#t~post5#1 := main_~row~0#1;main_~row~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {1627#(and (< 0 ~ARR_SIZE~0) (= |ULTIMATE.start_main_~sum~0#1| 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) |ULTIMATE.start_main_~#array~0#1.offset|) 0))} is VALID [2022-02-20 14:24:22,093 INFO L290 TraceCheckUtils]: 13: Hoare triple {1627#(and (< 0 ~ARR_SIZE~0) (= |ULTIMATE.start_main_~sum~0#1| 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) |ULTIMATE.start_main_~#array~0#1.offset|) 0))} assume !(main_~row~0#1 < ~ARR_SIZE~0); {1627#(and (< 0 ~ARR_SIZE~0) (= |ULTIMATE.start_main_~sum~0#1| 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) |ULTIMATE.start_main_~#array~0#1.offset|) 0))} is VALID [2022-02-20 14:24:22,094 INFO L290 TraceCheckUtils]: 14: Hoare triple {1627#(and (< 0 ~ARR_SIZE~0) (= |ULTIMATE.start_main_~sum~0#1| 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) |ULTIMATE.start_main_~#array~0#1.offset|) 0))} main_~row~0#1 := 0; {1643#(and (< 0 ~ARR_SIZE~0) (= |ULTIMATE.start_main_~sum~0#1| 0) (= |ULTIMATE.start_main_~row~0#1| 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) |ULTIMATE.start_main_~#array~0#1.offset|) 0))} is VALID [2022-02-20 14:24:22,094 INFO L290 TraceCheckUtils]: 15: Hoare triple {1643#(and (< 0 ~ARR_SIZE~0) (= |ULTIMATE.start_main_~sum~0#1| 0) (= |ULTIMATE.start_main_~row~0#1| 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) |ULTIMATE.start_main_~#array~0#1.offset|) 0))} assume !!(main_~row~0#1 < ~ARR_SIZE~0);main_~column~0#1 := 0; {1647#(and (< 0 ~ARR_SIZE~0) (= |ULTIMATE.start_main_~sum~0#1| 0) (= |ULTIMATE.start_main_~row~0#1| 0) (= |ULTIMATE.start_main_~column~0#1| 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) |ULTIMATE.start_main_~#array~0#1.offset|) 0))} is VALID [2022-02-20 14:24:22,095 INFO L290 TraceCheckUtils]: 16: Hoare triple {1647#(and (< 0 ~ARR_SIZE~0) (= |ULTIMATE.start_main_~sum~0#1| 0) (= |ULTIMATE.start_main_~row~0#1| 0) (= |ULTIMATE.start_main_~column~0#1| 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) |ULTIMATE.start_main_~#array~0#1.offset|) 0))} assume !!(main_~column~0#1 < ~ARR_SIZE~0);call main_#t~mem9#1 := read~int(main_~#array~0#1.base, main_~#array~0#1.offset + main_~row~0#1 * (4 * (if ~ARR_SIZE~0 % 4294967296 <= 2147483647 then ~ARR_SIZE~0 % 4294967296 else ~ARR_SIZE~0 % 4294967296 - 4294967296)) + 4 * main_~column~0#1, 4);main_~sum~0#1 := main_~sum~0#1 + main_#t~mem9#1;havoc main_#t~mem9#1; {1611#(and (= |ULTIMATE.start_main_~sum~0#1| 0) (< |ULTIMATE.start_main_~row~0#1| ~ARR_SIZE~0) (= |ULTIMATE.start_main_~row~0#1| 0))} is VALID [2022-02-20 14:24:22,095 INFO L290 TraceCheckUtils]: 17: Hoare triple {1611#(and (= |ULTIMATE.start_main_~sum~0#1| 0) (< |ULTIMATE.start_main_~row~0#1| ~ARR_SIZE~0) (= |ULTIMATE.start_main_~row~0#1| 0))} main_#t~post8#1 := main_~column~0#1;main_~column~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; {1611#(and (= |ULTIMATE.start_main_~sum~0#1| 0) (< |ULTIMATE.start_main_~row~0#1| ~ARR_SIZE~0) (= |ULTIMATE.start_main_~row~0#1| 0))} is VALID [2022-02-20 14:24:22,096 INFO L290 TraceCheckUtils]: 18: Hoare triple {1611#(and (= |ULTIMATE.start_main_~sum~0#1| 0) (< |ULTIMATE.start_main_~row~0#1| ~ARR_SIZE~0) (= |ULTIMATE.start_main_~row~0#1| 0))} assume !(main_~column~0#1 < ~ARR_SIZE~0); {1611#(and (= |ULTIMATE.start_main_~sum~0#1| 0) (< |ULTIMATE.start_main_~row~0#1| ~ARR_SIZE~0) (= |ULTIMATE.start_main_~row~0#1| 0))} is VALID [2022-02-20 14:24:22,096 INFO L290 TraceCheckUtils]: 19: Hoare triple {1611#(and (= |ULTIMATE.start_main_~sum~0#1| 0) (< |ULTIMATE.start_main_~row~0#1| ~ARR_SIZE~0) (= |ULTIMATE.start_main_~row~0#1| 0))} main_#t~post7#1 := main_~row~0#1;main_~row~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {1660#(and (< 0 ~ARR_SIZE~0) (= |ULTIMATE.start_main_~sum~0#1| 0) (<= |ULTIMATE.start_main_~row~0#1| 1))} is VALID [2022-02-20 14:24:22,097 INFO L290 TraceCheckUtils]: 20: Hoare triple {1660#(and (< 0 ~ARR_SIZE~0) (= |ULTIMATE.start_main_~sum~0#1| 0) (<= |ULTIMATE.start_main_~row~0#1| 1))} assume !(main_~row~0#1 < ~ARR_SIZE~0); {1664#(and (< 0 ~ARR_SIZE~0) (<= ~ARR_SIZE~0 1) (= |ULTIMATE.start_main_~sum~0#1| 0))} is VALID [2022-02-20 14:24:22,098 INFO L290 TraceCheckUtils]: 21: Hoare triple {1664#(and (< 0 ~ARR_SIZE~0) (<= ~ARR_SIZE~0 1) (= |ULTIMATE.start_main_~sum~0#1| 0))} assume { :begin_inline___VERIFIER_assert } true;__VERIFIER_assert_#in~cond#1 := (if 2 * main_~sum~0#1 == ~ARR_SIZE~0 * (~ARR_SIZE~0 - 1) * (~ARR_SIZE~0 - 1) then 1 else 0);havoc __VERIFIER_assert_~cond#1;__VERIFIER_assert_~cond#1 := __VERIFIER_assert_#in~cond#1; {1668#(<= 1 |ULTIMATE.start___VERIFIER_assert_~cond#1|)} is VALID [2022-02-20 14:24:22,098 INFO L290 TraceCheckUtils]: 22: Hoare triple {1668#(<= 1 |ULTIMATE.start___VERIFIER_assert_~cond#1|)} assume 0 == __VERIFIER_assert_~cond#1; {1594#false} is VALID [2022-02-20 14:24:22,098 INFO L290 TraceCheckUtils]: 23: Hoare triple {1594#false} assume !false; {1594#false} is VALID [2022-02-20 14:24:22,098 INFO L134 CoverageAnalysis]: Checked inductivity of 8 backedges. 0 proven. 6 refuted. 0 times theorem prover too weak. 2 trivial. 0 not checked. [2022-02-20 14:24:22,098 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 14:24:22,505 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 56 treesize of output 52 [2022-02-20 14:24:22,848 INFO L356 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2022-02-20 14:24:22,848 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 2 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 2 new quantified variables, introduced 2 case distinctions, treesize of input 52 treesize of output 121 [2022-02-20 14:24:23,160 INFO L356 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2022-02-20 14:24:23,161 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 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 348 treesize of output 350 [2022-02-20 14:24:27,790 INFO L290 TraceCheckUtils]: 23: Hoare triple {1594#false} assume !false; {1594#false} is VALID [2022-02-20 14:24:27,791 INFO L290 TraceCheckUtils]: 22: Hoare triple {1668#(<= 1 |ULTIMATE.start___VERIFIER_assert_~cond#1|)} assume 0 == __VERIFIER_assert_~cond#1; {1594#false} is VALID [2022-02-20 14:24:27,792 INFO L290 TraceCheckUtils]: 21: Hoare triple {1681#(= (+ (* 2 |ULTIMATE.start_main_~sum~0#1|) (* 2 (* ~ARR_SIZE~0 ~ARR_SIZE~0))) (+ (* ~ARR_SIZE~0 ~ARR_SIZE~0 ~ARR_SIZE~0) ~ARR_SIZE~0))} assume { :begin_inline___VERIFIER_assert } true;__VERIFIER_assert_#in~cond#1 := (if 2 * main_~sum~0#1 == ~ARR_SIZE~0 * (~ARR_SIZE~0 - 1) * (~ARR_SIZE~0 - 1) then 1 else 0);havoc __VERIFIER_assert_~cond#1;__VERIFIER_assert_~cond#1 := __VERIFIER_assert_#in~cond#1; {1668#(<= 1 |ULTIMATE.start___VERIFIER_assert_~cond#1|)} is VALID [2022-02-20 14:24:27,792 INFO L290 TraceCheckUtils]: 20: Hoare triple {1685#(or (< |ULTIMATE.start_main_~row~0#1| ~ARR_SIZE~0) (= (+ (* 2 |ULTIMATE.start_main_~sum~0#1|) (* 2 (* ~ARR_SIZE~0 ~ARR_SIZE~0))) (+ (* ~ARR_SIZE~0 ~ARR_SIZE~0 ~ARR_SIZE~0) ~ARR_SIZE~0)))} assume !(main_~row~0#1 < ~ARR_SIZE~0); {1681#(= (+ (* 2 |ULTIMATE.start_main_~sum~0#1|) (* 2 (* ~ARR_SIZE~0 ~ARR_SIZE~0))) (+ (* ~ARR_SIZE~0 ~ARR_SIZE~0 ~ARR_SIZE~0) ~ARR_SIZE~0))} is VALID [2022-02-20 14:24:27,793 INFO L290 TraceCheckUtils]: 19: Hoare triple {1689#(or (= (+ (* 2 |ULTIMATE.start_main_~sum~0#1|) (* 2 (* ~ARR_SIZE~0 ~ARR_SIZE~0))) (+ (* ~ARR_SIZE~0 ~ARR_SIZE~0 ~ARR_SIZE~0) ~ARR_SIZE~0)) (< (+ |ULTIMATE.start_main_~row~0#1| 1) ~ARR_SIZE~0))} main_#t~post7#1 := main_~row~0#1;main_~row~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {1685#(or (< |ULTIMATE.start_main_~row~0#1| ~ARR_SIZE~0) (= (+ (* 2 |ULTIMATE.start_main_~sum~0#1|) (* 2 (* ~ARR_SIZE~0 ~ARR_SIZE~0))) (+ (* ~ARR_SIZE~0 ~ARR_SIZE~0 ~ARR_SIZE~0) ~ARR_SIZE~0)))} is VALID [2022-02-20 14:24:27,794 INFO L290 TraceCheckUtils]: 18: Hoare triple {1689#(or (= (+ (* 2 |ULTIMATE.start_main_~sum~0#1|) (* 2 (* ~ARR_SIZE~0 ~ARR_SIZE~0))) (+ (* ~ARR_SIZE~0 ~ARR_SIZE~0 ~ARR_SIZE~0) ~ARR_SIZE~0)) (< (+ |ULTIMATE.start_main_~row~0#1| 1) ~ARR_SIZE~0))} assume !(main_~column~0#1 < ~ARR_SIZE~0); {1689#(or (= (+ (* 2 |ULTIMATE.start_main_~sum~0#1|) (* 2 (* ~ARR_SIZE~0 ~ARR_SIZE~0))) (+ (* ~ARR_SIZE~0 ~ARR_SIZE~0 ~ARR_SIZE~0) ~ARR_SIZE~0)) (< (+ |ULTIMATE.start_main_~row~0#1| 1) ~ARR_SIZE~0))} is VALID [2022-02-20 14:24:27,794 INFO L290 TraceCheckUtils]: 17: Hoare triple {1689#(or (= (+ (* 2 |ULTIMATE.start_main_~sum~0#1|) (* 2 (* ~ARR_SIZE~0 ~ARR_SIZE~0))) (+ (* ~ARR_SIZE~0 ~ARR_SIZE~0 ~ARR_SIZE~0) ~ARR_SIZE~0)) (< (+ |ULTIMATE.start_main_~row~0#1| 1) ~ARR_SIZE~0))} main_#t~post8#1 := main_~column~0#1;main_~column~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; {1689#(or (= (+ (* 2 |ULTIMATE.start_main_~sum~0#1|) (* 2 (* ~ARR_SIZE~0 ~ARR_SIZE~0))) (+ (* ~ARR_SIZE~0 ~ARR_SIZE~0 ~ARR_SIZE~0) ~ARR_SIZE~0)) (< (+ |ULTIMATE.start_main_~row~0#1| 1) ~ARR_SIZE~0))} is VALID [2022-02-20 14:24:27,799 INFO L290 TraceCheckUtils]: 16: Hoare triple {1699#(or (< (+ |ULTIMATE.start_main_~row~0#1| 1) ~ARR_SIZE~0) (and (or (= (+ (* ~ARR_SIZE~0 ~ARR_SIZE~0 ~ARR_SIZE~0) ~ARR_SIZE~0) (+ (* (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~row~0#1|) (* |ULTIMATE.start_main_~column~0#1| 4) |ULTIMATE.start_main_~#array~0#1.offset|)) 2) (* 2 |ULTIMATE.start_main_~sum~0#1|) (* 2 (* ~ARR_SIZE~0 ~ARR_SIZE~0)))) (not (<= (mod ~ARR_SIZE~0 4294967296) 2147483647))) (or (<= (mod ~ARR_SIZE~0 4294967296) 2147483647) (= (+ (* ~ARR_SIZE~0 ~ARR_SIZE~0 ~ARR_SIZE~0) ~ARR_SIZE~0) (+ (* (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* |ULTIMATE.start_main_~column~0#1| 4) |ULTIMATE.start_main_~#array~0#1.offset| (* |ULTIMATE.start_main_~row~0#1| (+ (- 17179869184) (* (mod ~ARR_SIZE~0 4294967296) 4))))) 2) (* 2 |ULTIMATE.start_main_~sum~0#1|) (* 2 (* ~ARR_SIZE~0 ~ARR_SIZE~0)))))))} assume !!(main_~column~0#1 < ~ARR_SIZE~0);call main_#t~mem9#1 := read~int(main_~#array~0#1.base, main_~#array~0#1.offset + main_~row~0#1 * (4 * (if ~ARR_SIZE~0 % 4294967296 <= 2147483647 then ~ARR_SIZE~0 % 4294967296 else ~ARR_SIZE~0 % 4294967296 - 4294967296)) + 4 * main_~column~0#1, 4);main_~sum~0#1 := main_~sum~0#1 + main_#t~mem9#1;havoc main_#t~mem9#1; {1689#(or (= (+ (* 2 |ULTIMATE.start_main_~sum~0#1|) (* 2 (* ~ARR_SIZE~0 ~ARR_SIZE~0))) (+ (* ~ARR_SIZE~0 ~ARR_SIZE~0 ~ARR_SIZE~0) ~ARR_SIZE~0)) (< (+ |ULTIMATE.start_main_~row~0#1| 1) ~ARR_SIZE~0))} is VALID [2022-02-20 14:24:27,800 INFO L290 TraceCheckUtils]: 15: Hoare triple {1703#(or (< (+ |ULTIMATE.start_main_~row~0#1| 1) ~ARR_SIZE~0) (and (or (= (+ (* ~ARR_SIZE~0 ~ARR_SIZE~0 ~ARR_SIZE~0) ~ARR_SIZE~0) (+ (* (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ |ULTIMATE.start_main_~#array~0#1.offset| (* |ULTIMATE.start_main_~row~0#1| (+ (- 17179869184) (* (mod ~ARR_SIZE~0 4294967296) 4))))) 2) (* 2 |ULTIMATE.start_main_~sum~0#1|) (* 2 (* ~ARR_SIZE~0 ~ARR_SIZE~0)))) (<= (mod ~ARR_SIZE~0 4294967296) 2147483647)) (or (= (+ (* ~ARR_SIZE~0 ~ARR_SIZE~0 ~ARR_SIZE~0) ~ARR_SIZE~0) (+ (* 2 (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~row~0#1|) |ULTIMATE.start_main_~#array~0#1.offset|))) (* 2 |ULTIMATE.start_main_~sum~0#1|) (* 2 (* ~ARR_SIZE~0 ~ARR_SIZE~0)))) (not (<= (mod ~ARR_SIZE~0 4294967296) 2147483647)))))} assume !!(main_~row~0#1 < ~ARR_SIZE~0);main_~column~0#1 := 0; {1699#(or (< (+ |ULTIMATE.start_main_~row~0#1| 1) ~ARR_SIZE~0) (and (or (= (+ (* ~ARR_SIZE~0 ~ARR_SIZE~0 ~ARR_SIZE~0) ~ARR_SIZE~0) (+ (* (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~row~0#1|) (* |ULTIMATE.start_main_~column~0#1| 4) |ULTIMATE.start_main_~#array~0#1.offset|)) 2) (* 2 |ULTIMATE.start_main_~sum~0#1|) (* 2 (* ~ARR_SIZE~0 ~ARR_SIZE~0)))) (not (<= (mod ~ARR_SIZE~0 4294967296) 2147483647))) (or (<= (mod ~ARR_SIZE~0 4294967296) 2147483647) (= (+ (* ~ARR_SIZE~0 ~ARR_SIZE~0 ~ARR_SIZE~0) ~ARR_SIZE~0) (+ (* (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* |ULTIMATE.start_main_~column~0#1| 4) |ULTIMATE.start_main_~#array~0#1.offset| (* |ULTIMATE.start_main_~row~0#1| (+ (- 17179869184) (* (mod ~ARR_SIZE~0 4294967296) 4))))) 2) (* 2 |ULTIMATE.start_main_~sum~0#1|) (* 2 (* ~ARR_SIZE~0 ~ARR_SIZE~0)))))))} is VALID [2022-02-20 14:24:27,801 INFO L290 TraceCheckUtils]: 14: Hoare triple {1707#(or (< 1 ~ARR_SIZE~0) (= (+ (* ~ARR_SIZE~0 ~ARR_SIZE~0 ~ARR_SIZE~0) ~ARR_SIZE~0) (+ (* (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) |ULTIMATE.start_main_~#array~0#1.offset|) 2) (* 2 |ULTIMATE.start_main_~sum~0#1|) (* 2 (* ~ARR_SIZE~0 ~ARR_SIZE~0)))))} main_~row~0#1 := 0; {1703#(or (< (+ |ULTIMATE.start_main_~row~0#1| 1) ~ARR_SIZE~0) (and (or (= (+ (* ~ARR_SIZE~0 ~ARR_SIZE~0 ~ARR_SIZE~0) ~ARR_SIZE~0) (+ (* (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ |ULTIMATE.start_main_~#array~0#1.offset| (* |ULTIMATE.start_main_~row~0#1| (+ (- 17179869184) (* (mod ~ARR_SIZE~0 4294967296) 4))))) 2) (* 2 |ULTIMATE.start_main_~sum~0#1|) (* 2 (* ~ARR_SIZE~0 ~ARR_SIZE~0)))) (<= (mod ~ARR_SIZE~0 4294967296) 2147483647)) (or (= (+ (* ~ARR_SIZE~0 ~ARR_SIZE~0 ~ARR_SIZE~0) ~ARR_SIZE~0) (+ (* 2 (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~row~0#1|) |ULTIMATE.start_main_~#array~0#1.offset|))) (* 2 |ULTIMATE.start_main_~sum~0#1|) (* 2 (* ~ARR_SIZE~0 ~ARR_SIZE~0)))) (not (<= (mod ~ARR_SIZE~0 4294967296) 2147483647)))))} is VALID [2022-02-20 14:24:27,802 INFO L290 TraceCheckUtils]: 13: Hoare triple {1707#(or (< 1 ~ARR_SIZE~0) (= (+ (* ~ARR_SIZE~0 ~ARR_SIZE~0 ~ARR_SIZE~0) ~ARR_SIZE~0) (+ (* (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) |ULTIMATE.start_main_~#array~0#1.offset|) 2) (* 2 |ULTIMATE.start_main_~sum~0#1|) (* 2 (* ~ARR_SIZE~0 ~ARR_SIZE~0)))))} assume !(main_~row~0#1 < ~ARR_SIZE~0); {1707#(or (< 1 ~ARR_SIZE~0) (= (+ (* ~ARR_SIZE~0 ~ARR_SIZE~0 ~ARR_SIZE~0) ~ARR_SIZE~0) (+ (* (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) |ULTIMATE.start_main_~#array~0#1.offset|) 2) (* 2 |ULTIMATE.start_main_~sum~0#1|) (* 2 (* ~ARR_SIZE~0 ~ARR_SIZE~0)))))} is VALID [2022-02-20 14:24:27,802 INFO L290 TraceCheckUtils]: 12: Hoare triple {1707#(or (< 1 ~ARR_SIZE~0) (= (+ (* ~ARR_SIZE~0 ~ARR_SIZE~0 ~ARR_SIZE~0) ~ARR_SIZE~0) (+ (* (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) |ULTIMATE.start_main_~#array~0#1.offset|) 2) (* 2 |ULTIMATE.start_main_~sum~0#1|) (* 2 (* ~ARR_SIZE~0 ~ARR_SIZE~0)))))} main_#t~post5#1 := main_~row~0#1;main_~row~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {1707#(or (< 1 ~ARR_SIZE~0) (= (+ (* ~ARR_SIZE~0 ~ARR_SIZE~0 ~ARR_SIZE~0) ~ARR_SIZE~0) (+ (* (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) |ULTIMATE.start_main_~#array~0#1.offset|) 2) (* 2 |ULTIMATE.start_main_~sum~0#1|) (* 2 (* ~ARR_SIZE~0 ~ARR_SIZE~0)))))} is VALID [2022-02-20 14:24:27,803 INFO L290 TraceCheckUtils]: 11: Hoare triple {1707#(or (< 1 ~ARR_SIZE~0) (= (+ (* ~ARR_SIZE~0 ~ARR_SIZE~0 ~ARR_SIZE~0) ~ARR_SIZE~0) (+ (* (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) |ULTIMATE.start_main_~#array~0#1.offset|) 2) (* 2 |ULTIMATE.start_main_~sum~0#1|) (* 2 (* ~ARR_SIZE~0 ~ARR_SIZE~0)))))} assume !(main_~column~0#1 < ~ARR_SIZE~0); {1707#(or (< 1 ~ARR_SIZE~0) (= (+ (* ~ARR_SIZE~0 ~ARR_SIZE~0 ~ARR_SIZE~0) ~ARR_SIZE~0) (+ (* (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) |ULTIMATE.start_main_~#array~0#1.offset|) 2) (* 2 |ULTIMATE.start_main_~sum~0#1|) (* 2 (* ~ARR_SIZE~0 ~ARR_SIZE~0)))))} is VALID [2022-02-20 14:24:27,803 INFO L290 TraceCheckUtils]: 10: Hoare triple {1707#(or (< 1 ~ARR_SIZE~0) (= (+ (* ~ARR_SIZE~0 ~ARR_SIZE~0 ~ARR_SIZE~0) ~ARR_SIZE~0) (+ (* (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) |ULTIMATE.start_main_~#array~0#1.offset|) 2) (* 2 |ULTIMATE.start_main_~sum~0#1|) (* 2 (* ~ARR_SIZE~0 ~ARR_SIZE~0)))))} main_#t~post6#1 := main_~column~0#1;main_~column~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {1707#(or (< 1 ~ARR_SIZE~0) (= (+ (* ~ARR_SIZE~0 ~ARR_SIZE~0 ~ARR_SIZE~0) ~ARR_SIZE~0) (+ (* (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) |ULTIMATE.start_main_~#array~0#1.offset|) 2) (* 2 |ULTIMATE.start_main_~sum~0#1|) (* 2 (* ~ARR_SIZE~0 ~ARR_SIZE~0)))))} is VALID [2022-02-20 14:24:27,806 INFO L290 TraceCheckUtils]: 9: Hoare triple {1723#(or (< 1 ~ARR_SIZE~0) (and (= (+ (* 2 |ULTIMATE.start_main_~sum~0#1|) (* 2 (* ~ARR_SIZE~0 ~ARR_SIZE~0))) (+ (* ~ARR_SIZE~0 ~ARR_SIZE~0 ~ARR_SIZE~0) ~ARR_SIZE~0)) (= (* (* (mod ~ARR_SIZE~0 4294967296) |ULTIMATE.start_main_~row~0#1|) 4) (* 17179869180 |ULTIMATE.start_main_~row~0#1|))))} assume main_~row~0#1 == main_~column~0#1;call write~int(0, main_~#array~0#1.base, main_~#array~0#1.offset + main_~row~0#1 * (4 * (if ~ARR_SIZE~0 % 4294967296 <= 2147483647 then ~ARR_SIZE~0 % 4294967296 else ~ARR_SIZE~0 % 4294967296 - 4294967296)) + 4 * main_~row~0#1, 4); {1707#(or (< 1 ~ARR_SIZE~0) (= (+ (* ~ARR_SIZE~0 ~ARR_SIZE~0 ~ARR_SIZE~0) ~ARR_SIZE~0) (+ (* (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) |ULTIMATE.start_main_~#array~0#1.offset|) 2) (* 2 |ULTIMATE.start_main_~sum~0#1|) (* 2 (* ~ARR_SIZE~0 ~ARR_SIZE~0)))))} is VALID [2022-02-20 14:24:27,807 INFO L290 TraceCheckUtils]: 8: Hoare triple {1723#(or (< 1 ~ARR_SIZE~0) (and (= (+ (* 2 |ULTIMATE.start_main_~sum~0#1|) (* 2 (* ~ARR_SIZE~0 ~ARR_SIZE~0))) (+ (* ~ARR_SIZE~0 ~ARR_SIZE~0 ~ARR_SIZE~0) ~ARR_SIZE~0)) (= (* (* (mod ~ARR_SIZE~0 4294967296) |ULTIMATE.start_main_~row~0#1|) 4) (* 17179869180 |ULTIMATE.start_main_~row~0#1|))))} assume !!(main_~column~0#1 < ~ARR_SIZE~0); {1723#(or (< 1 ~ARR_SIZE~0) (and (= (+ (* 2 |ULTIMATE.start_main_~sum~0#1|) (* 2 (* ~ARR_SIZE~0 ~ARR_SIZE~0))) (+ (* ~ARR_SIZE~0 ~ARR_SIZE~0 ~ARR_SIZE~0) ~ARR_SIZE~0)) (= (* (* (mod ~ARR_SIZE~0 4294967296) |ULTIMATE.start_main_~row~0#1|) 4) (* 17179869180 |ULTIMATE.start_main_~row~0#1|))))} is VALID [2022-02-20 14:24:27,808 INFO L290 TraceCheckUtils]: 7: Hoare triple {1723#(or (< 1 ~ARR_SIZE~0) (and (= (+ (* 2 |ULTIMATE.start_main_~sum~0#1|) (* 2 (* ~ARR_SIZE~0 ~ARR_SIZE~0))) (+ (* ~ARR_SIZE~0 ~ARR_SIZE~0 ~ARR_SIZE~0) ~ARR_SIZE~0)) (= (* (* (mod ~ARR_SIZE~0 4294967296) |ULTIMATE.start_main_~row~0#1|) 4) (* 17179869180 |ULTIMATE.start_main_~row~0#1|))))} main_#t~post6#1 := main_~column~0#1;main_~column~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {1723#(or (< 1 ~ARR_SIZE~0) (and (= (+ (* 2 |ULTIMATE.start_main_~sum~0#1|) (* 2 (* ~ARR_SIZE~0 ~ARR_SIZE~0))) (+ (* ~ARR_SIZE~0 ~ARR_SIZE~0 ~ARR_SIZE~0) ~ARR_SIZE~0)) (= (* (* (mod ~ARR_SIZE~0 4294967296) |ULTIMATE.start_main_~row~0#1|) 4) (* 17179869180 |ULTIMATE.start_main_~row~0#1|))))} is VALID [2022-02-20 14:24:27,809 INFO L290 TraceCheckUtils]: 6: Hoare triple {1723#(or (< 1 ~ARR_SIZE~0) (and (= (+ (* 2 |ULTIMATE.start_main_~sum~0#1|) (* 2 (* ~ARR_SIZE~0 ~ARR_SIZE~0))) (+ (* ~ARR_SIZE~0 ~ARR_SIZE~0 ~ARR_SIZE~0) ~ARR_SIZE~0)) (= (* (* (mod ~ARR_SIZE~0 4294967296) |ULTIMATE.start_main_~row~0#1|) 4) (* 17179869180 |ULTIMATE.start_main_~row~0#1|))))} assume main_~row~0#1 == main_~column~0#1;call write~int(0, main_~#array~0#1.base, main_~#array~0#1.offset + main_~row~0#1 * (4 * (if ~ARR_SIZE~0 % 4294967296 <= 2147483647 then ~ARR_SIZE~0 % 4294967296 else ~ARR_SIZE~0 % 4294967296 - 4294967296)) + 4 * main_~row~0#1, 4); {1723#(or (< 1 ~ARR_SIZE~0) (and (= (+ (* 2 |ULTIMATE.start_main_~sum~0#1|) (* 2 (* ~ARR_SIZE~0 ~ARR_SIZE~0))) (+ (* ~ARR_SIZE~0 ~ARR_SIZE~0 ~ARR_SIZE~0) ~ARR_SIZE~0)) (= (* (* (mod ~ARR_SIZE~0 4294967296) |ULTIMATE.start_main_~row~0#1|) 4) (* 17179869180 |ULTIMATE.start_main_~row~0#1|))))} is VALID [2022-02-20 14:24:27,810 INFO L290 TraceCheckUtils]: 5: Hoare triple {1723#(or (< 1 ~ARR_SIZE~0) (and (= (+ (* 2 |ULTIMATE.start_main_~sum~0#1|) (* 2 (* ~ARR_SIZE~0 ~ARR_SIZE~0))) (+ (* ~ARR_SIZE~0 ~ARR_SIZE~0 ~ARR_SIZE~0) ~ARR_SIZE~0)) (= (* (* (mod ~ARR_SIZE~0 4294967296) |ULTIMATE.start_main_~row~0#1|) 4) (* 17179869180 |ULTIMATE.start_main_~row~0#1|))))} assume !!(main_~column~0#1 < ~ARR_SIZE~0); {1723#(or (< 1 ~ARR_SIZE~0) (and (= (+ (* 2 |ULTIMATE.start_main_~sum~0#1|) (* 2 (* ~ARR_SIZE~0 ~ARR_SIZE~0))) (+ (* ~ARR_SIZE~0 ~ARR_SIZE~0 ~ARR_SIZE~0) ~ARR_SIZE~0)) (= (* (* (mod ~ARR_SIZE~0 4294967296) |ULTIMATE.start_main_~row~0#1|) 4) (* 17179869180 |ULTIMATE.start_main_~row~0#1|))))} is VALID [2022-02-20 14:24:27,811 INFO L290 TraceCheckUtils]: 4: Hoare triple {1739#(forall ((~ARR_SIZE~0 Int)) (or (< 1 ~ARR_SIZE~0) (and (= (+ (* 2 |ULTIMATE.start_main_~sum~0#1|) (* 2 (* ~ARR_SIZE~0 ~ARR_SIZE~0))) (+ (* ~ARR_SIZE~0 ~ARR_SIZE~0 ~ARR_SIZE~0) ~ARR_SIZE~0)) (= (* (* (mod ~ARR_SIZE~0 4294967296) |ULTIMATE.start_main_~row~0#1|) 4) (* 17179869180 |ULTIMATE.start_main_~row~0#1|))) (not (< |ULTIMATE.start_main_~row~0#1| ~ARR_SIZE~0))))} assume !!(main_~row~0#1 < ~ARR_SIZE~0);main_~column~0#1 := 0; {1723#(or (< 1 ~ARR_SIZE~0) (and (= (+ (* 2 |ULTIMATE.start_main_~sum~0#1|) (* 2 (* ~ARR_SIZE~0 ~ARR_SIZE~0))) (+ (* ~ARR_SIZE~0 ~ARR_SIZE~0 ~ARR_SIZE~0) ~ARR_SIZE~0)) (= (* (* (mod ~ARR_SIZE~0 4294967296) |ULTIMATE.start_main_~row~0#1|) 4) (* 17179869180 |ULTIMATE.start_main_~row~0#1|))))} is VALID [2022-02-20 14:24:27,812 INFO L290 TraceCheckUtils]: 3: Hoare triple {1593#true} assume { :end_inline_assume_abort_if_not } true;call main_~#array~0#1.base, main_~#array~0#1.offset := #Ultimate.allocOnStack(4 * (if ~ARR_SIZE~0 % 4294967296 <= 2147483647 then ~ARR_SIZE~0 % 4294967296 else ~ARR_SIZE~0 % 4294967296 - 4294967296) * (if ~ARR_SIZE~0 % 4294967296 <= 2147483647 then ~ARR_SIZE~0 % 4294967296 else ~ARR_SIZE~0 % 4294967296 - 4294967296));main_~row~0#1 := 0;main_~column~0#1 := 0;main_~sum~0#1 := 0;main_~row~0#1 := 0; {1739#(forall ((~ARR_SIZE~0 Int)) (or (< 1 ~ARR_SIZE~0) (and (= (+ (* 2 |ULTIMATE.start_main_~sum~0#1|) (* 2 (* ~ARR_SIZE~0 ~ARR_SIZE~0))) (+ (* ~ARR_SIZE~0 ~ARR_SIZE~0 ~ARR_SIZE~0) ~ARR_SIZE~0)) (= (* (* (mod ~ARR_SIZE~0 4294967296) |ULTIMATE.start_main_~row~0#1|) 4) (* 17179869180 |ULTIMATE.start_main_~row~0#1|))) (not (< |ULTIMATE.start_main_~row~0#1| ~ARR_SIZE~0))))} is VALID [2022-02-20 14:24:27,813 INFO L290 TraceCheckUtils]: 2: Hoare triple {1593#true} assume !(0 == assume_abort_if_not_~cond#1); {1593#true} is VALID [2022-02-20 14:24:27,813 INFO L290 TraceCheckUtils]: 1: Hoare triple {1593#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~post6#1, main_#t~post5#1, main_#t~mem9#1, main_#t~post8#1, main_#t~post7#1, main_~#array~0#1.base, main_~#array~0#1.offset, main_~row~0#1, main_~column~0#1, main_~sum~0#1;assume -32768 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 32767;~ARR_SIZE~0 := main_#t~nondet4#1;havoc main_#t~nondet4#1;assume { :begin_inline_assume_abort_if_not } true;assume_abort_if_not_#in~cond#1 := (if ~ARR_SIZE~0 > 0 then 1 else 0);havoc assume_abort_if_not_~cond#1;assume_abort_if_not_~cond#1 := assume_abort_if_not_#in~cond#1; {1593#true} is VALID [2022-02-20 14:24:27,813 INFO L290 TraceCheckUtils]: 0: Hoare triple {1593#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~ARR_SIZE~0 := 0; {1593#true} is VALID [2022-02-20 14:24:27,813 INFO L134 CoverageAnalysis]: Checked inductivity of 8 backedges. 0 proven. 6 refuted. 0 times theorem prover too weak. 2 trivial. 0 not checked. [2022-02-20 14:24:27,813 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 14:24:27,813 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1764778138] [2022-02-20 14:24:27,814 WARN L317 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-02-20 14:24:27,814 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1081164275] [2022-02-20 14:24:27,814 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1081164275] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 14:24:27,814 INFO L191 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-02-20 14:24:27,814 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [10, 11] total 18 [2022-02-20 14:24:27,814 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [706212261] [2022-02-20 14:24:27,814 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-02-20 14:24:27,815 INFO L78 Accepts]: Start accepts. Automaton has has 18 states, 18 states have (on average 2.2777777777777777) internal successors, (41), 18 states have internal predecessors, (41), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 24 [2022-02-20 14:24:27,815 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 14:24:27,815 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 18 states, 18 states have (on average 2.2777777777777777) internal successors, (41), 18 states have internal predecessors, (41), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:24:27,866 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 41 edges. 41 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 14:24:27,866 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 18 states [2022-02-20 14:24:27,866 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 14:24:27,867 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 18 interpolants. [2022-02-20 14:24:27,867 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=70, Invalid=236, Unknown=0, NotChecked=0, Total=306 [2022-02-20 14:24:27,867 INFO L87 Difference]: Start difference. First operand 60 states and 76 transitions. Second operand has 18 states, 18 states have (on average 2.2777777777777777) internal successors, (41), 18 states have internal predecessors, (41), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:24:29,795 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 14:24:29,796 INFO L93 Difference]: Finished difference Result 184 states and 232 transitions. [2022-02-20 14:24:29,796 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 24 states. [2022-02-20 14:24:29,796 INFO L78 Accepts]: Start accepts. Automaton has has 18 states, 18 states have (on average 2.2777777777777777) internal successors, (41), 18 states have internal predecessors, (41), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 24 [2022-02-20 14:24:29,796 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 14:24:29,796 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 18 states, 18 states have (on average 2.2777777777777777) internal successors, (41), 18 states have internal predecessors, (41), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:24:29,798 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 24 states to 24 states and 97 transitions. [2022-02-20 14:24:29,798 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 18 states, 18 states have (on average 2.2777777777777777) internal successors, (41), 18 states have internal predecessors, (41), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:24:29,799 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 24 states to 24 states and 97 transitions. [2022-02-20 14:24:29,799 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 24 states and 97 transitions. [2022-02-20 14:24:29,950 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 97 edges. 97 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 14:24:29,953 INFO L225 Difference]: With dead ends: 184 [2022-02-20 14:24:29,953 INFO L226 Difference]: Without dead ends: 178 [2022-02-20 14:24:29,954 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 62 GetRequests, 29 SyntacticMatches, 3 SemanticMatches, 30 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 211 ImplicationChecksByTransitivity, 1.1s TimeCoverageRelationStatistics Valid=250, Invalid=742, Unknown=0, NotChecked=0, Total=992 [2022-02-20 14:24:29,955 INFO L933 BasicCegarLoop]: 7 mSDtfsCounter, 76 mSDsluCounter, 59 mSDsCounter, 0 mSdLazyCounter, 286 mSolverCounterSat, 58 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.6s Time, 0 mProtectedPredicate, 0 mProtectedAction, 76 SdHoareTripleChecker+Valid, 66 SdHoareTripleChecker+Invalid, 389 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 58 IncrementalHoareTripleChecker+Valid, 286 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 45 IncrementalHoareTripleChecker+Unchecked, 0.6s IncrementalHoareTripleChecker+Time [2022-02-20 14:24:29,955 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [76 Valid, 66 Invalid, 389 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [58 Valid, 286 Invalid, 0 Unknown, 45 Unchecked, 0.6s Time] [2022-02-20 14:24:29,955 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 178 states. [2022-02-20 14:24:30,078 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 178 to 101. [2022-02-20 14:24:30,079 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 14:24:30,079 INFO L82 GeneralOperation]: Start isEquivalent. First operand 178 states. Second operand has 101 states, 100 states have (on average 1.32) internal successors, (132), 100 states have internal predecessors, (132), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:24:30,079 INFO L74 IsIncluded]: Start isIncluded. First operand 178 states. Second operand has 101 states, 100 states have (on average 1.32) internal successors, (132), 100 states have internal predecessors, (132), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:24:30,079 INFO L87 Difference]: Start difference. First operand 178 states. Second operand has 101 states, 100 states have (on average 1.32) internal successors, (132), 100 states have internal predecessors, (132), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:24:30,082 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 14:24:30,083 INFO L93 Difference]: Finished difference Result 178 states and 224 transitions. [2022-02-20 14:24:30,083 INFO L276 IsEmpty]: Start isEmpty. Operand 178 states and 224 transitions. [2022-02-20 14:24:30,083 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 14:24:30,083 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 14:24:30,084 INFO L74 IsIncluded]: Start isIncluded. First operand has 101 states, 100 states have (on average 1.32) internal successors, (132), 100 states have internal predecessors, (132), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 178 states. [2022-02-20 14:24:30,084 INFO L87 Difference]: Start difference. First operand has 101 states, 100 states have (on average 1.32) internal successors, (132), 100 states have internal predecessors, (132), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 178 states. [2022-02-20 14:24:30,087 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 14:24:30,087 INFO L93 Difference]: Finished difference Result 178 states and 224 transitions. [2022-02-20 14:24:30,087 INFO L276 IsEmpty]: Start isEmpty. Operand 178 states and 224 transitions. [2022-02-20 14:24:30,088 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 14:24:30,088 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 14:24:30,088 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 14:24:30,088 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 14:24:30,088 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 101 states, 100 states have (on average 1.32) internal successors, (132), 100 states have internal predecessors, (132), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:24:30,090 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 101 states to 101 states and 132 transitions. [2022-02-20 14:24:30,090 INFO L78 Accepts]: Start accepts. Automaton has 101 states and 132 transitions. Word has length 24 [2022-02-20 14:24:30,090 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 14:24:30,090 INFO L470 AbstractCegarLoop]: Abstraction has 101 states and 132 transitions. [2022-02-20 14:24:30,091 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 18 states, 18 states have (on average 2.2777777777777777) internal successors, (41), 18 states have internal predecessors, (41), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:24:30,091 INFO L276 IsEmpty]: Start isEmpty. Operand 101 states and 132 transitions. [2022-02-20 14:24:30,091 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 25 [2022-02-20 14:24:30,091 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 14:24:30,091 INFO L514 BasicCegarLoop]: trace histogram [2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 14:24:30,096 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Ended with exit code 0 [2022-02-20 14:24:30,296 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable5,6 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 14:24:30,296 INFO L402 AbstractCegarLoop]: === Iteration 7 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 14:24:30,296 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 14:24:30,296 INFO L85 PathProgramCache]: Analyzing trace with hash -511185762, now seen corresponding path program 1 times [2022-02-20 14:24:30,296 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 14:24:30,297 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1356345583] [2022-02-20 14:24:30,297 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 14:24:30,297 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 14:24:30,322 ERROR L252 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-02-20 14:24:30,322 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [930021766] [2022-02-20 14:24:30,322 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 14:24:30,322 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 14:24:30,323 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 14:24:30,323 INFO L229 MonitoredProcess]: Starting monitored process 7 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-02-20 14:24:30,325 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Waiting until timeout for monitored process [2022-02-20 14:24:30,364 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 14:24:30,365 INFO L263 TraceCheckSpWp]: Trace formula consists of 96 conjuncts, 6 conjunts are in the unsatisfiable core [2022-02-20 14:24:30,376 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 14:24:30,378 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 14:24:30,519 INFO L290 TraceCheckUtils]: 0: Hoare triple {2552#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~ARR_SIZE~0 := 0; {2552#true} is VALID [2022-02-20 14:24:30,519 INFO L290 TraceCheckUtils]: 1: Hoare triple {2552#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~post6#1, main_#t~post5#1, main_#t~mem9#1, main_#t~post8#1, main_#t~post7#1, main_~#array~0#1.base, main_~#array~0#1.offset, main_~row~0#1, main_~column~0#1, main_~sum~0#1;assume -32768 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 32767;~ARR_SIZE~0 := main_#t~nondet4#1;havoc main_#t~nondet4#1;assume { :begin_inline_assume_abort_if_not } true;assume_abort_if_not_#in~cond#1 := (if ~ARR_SIZE~0 > 0 then 1 else 0);havoc assume_abort_if_not_~cond#1;assume_abort_if_not_~cond#1 := assume_abort_if_not_#in~cond#1; {2552#true} is VALID [2022-02-20 14:24:30,519 INFO L290 TraceCheckUtils]: 2: Hoare triple {2552#true} assume !(0 == assume_abort_if_not_~cond#1); {2552#true} is VALID [2022-02-20 14:24:30,520 INFO L290 TraceCheckUtils]: 3: Hoare triple {2552#true} assume { :end_inline_assume_abort_if_not } true;call main_~#array~0#1.base, main_~#array~0#1.offset := #Ultimate.allocOnStack(4 * (if ~ARR_SIZE~0 % 4294967296 <= 2147483647 then ~ARR_SIZE~0 % 4294967296 else ~ARR_SIZE~0 % 4294967296 - 4294967296) * (if ~ARR_SIZE~0 % 4294967296 <= 2147483647 then ~ARR_SIZE~0 % 4294967296 else ~ARR_SIZE~0 % 4294967296 - 4294967296));main_~row~0#1 := 0;main_~column~0#1 := 0;main_~sum~0#1 := 0;main_~row~0#1 := 0; {2566#(<= |ULTIMATE.start_main_~row~0#1| 0)} is VALID [2022-02-20 14:24:30,520 INFO L290 TraceCheckUtils]: 4: Hoare triple {2566#(<= |ULTIMATE.start_main_~row~0#1| 0)} assume !!(main_~row~0#1 < ~ARR_SIZE~0);main_~column~0#1 := 0; {2570#(and (<= |ULTIMATE.start_main_~row~0#1| 0) (<= 0 |ULTIMATE.start_main_~column~0#1|))} is VALID [2022-02-20 14:24:30,521 INFO L290 TraceCheckUtils]: 5: Hoare triple {2570#(and (<= |ULTIMATE.start_main_~row~0#1| 0) (<= 0 |ULTIMATE.start_main_~column~0#1|))} assume !!(main_~column~0#1 < ~ARR_SIZE~0); {2570#(and (<= |ULTIMATE.start_main_~row~0#1| 0) (<= 0 |ULTIMATE.start_main_~column~0#1|))} is VALID [2022-02-20 14:24:30,521 INFO L290 TraceCheckUtils]: 6: Hoare triple {2570#(and (<= |ULTIMATE.start_main_~row~0#1| 0) (<= 0 |ULTIMATE.start_main_~column~0#1|))} assume !(main_~row~0#1 == main_~column~0#1);call write~int(main_~row~0#1, main_~#array~0#1.base, main_~#array~0#1.offset + main_~row~0#1 * (4 * (if ~ARR_SIZE~0 % 4294967296 <= 2147483647 then ~ARR_SIZE~0 % 4294967296 else ~ARR_SIZE~0 % 4294967296 - 4294967296)) + 4 * main_~column~0#1, 4); {2570#(and (<= |ULTIMATE.start_main_~row~0#1| 0) (<= 0 |ULTIMATE.start_main_~column~0#1|))} is VALID [2022-02-20 14:24:30,522 INFO L290 TraceCheckUtils]: 7: Hoare triple {2570#(and (<= |ULTIMATE.start_main_~row~0#1| 0) (<= 0 |ULTIMATE.start_main_~column~0#1|))} main_#t~post6#1 := main_~column~0#1;main_~column~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {2580#(and (<= |ULTIMATE.start_main_~row~0#1| 0) (<= 1 |ULTIMATE.start_main_~column~0#1|))} is VALID [2022-02-20 14:24:30,522 INFO L290 TraceCheckUtils]: 8: Hoare triple {2580#(and (<= |ULTIMATE.start_main_~row~0#1| 0) (<= 1 |ULTIMATE.start_main_~column~0#1|))} assume !!(main_~column~0#1 < ~ARR_SIZE~0); {2584#(and (<= |ULTIMATE.start_main_~row~0#1| 0) (< 1 ~ARR_SIZE~0))} is VALID [2022-02-20 14:24:30,523 INFO L290 TraceCheckUtils]: 9: Hoare triple {2584#(and (<= |ULTIMATE.start_main_~row~0#1| 0) (< 1 ~ARR_SIZE~0))} assume !(main_~row~0#1 == main_~column~0#1);call write~int(main_~row~0#1, main_~#array~0#1.base, main_~#array~0#1.offset + main_~row~0#1 * (4 * (if ~ARR_SIZE~0 % 4294967296 <= 2147483647 then ~ARR_SIZE~0 % 4294967296 else ~ARR_SIZE~0 % 4294967296 - 4294967296)) + 4 * main_~column~0#1, 4); {2584#(and (<= |ULTIMATE.start_main_~row~0#1| 0) (< 1 ~ARR_SIZE~0))} is VALID [2022-02-20 14:24:30,523 INFO L290 TraceCheckUtils]: 10: Hoare triple {2584#(and (<= |ULTIMATE.start_main_~row~0#1| 0) (< 1 ~ARR_SIZE~0))} main_#t~post6#1 := main_~column~0#1;main_~column~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {2584#(and (<= |ULTIMATE.start_main_~row~0#1| 0) (< 1 ~ARR_SIZE~0))} is VALID [2022-02-20 14:24:30,524 INFO L290 TraceCheckUtils]: 11: Hoare triple {2584#(and (<= |ULTIMATE.start_main_~row~0#1| 0) (< 1 ~ARR_SIZE~0))} assume !(main_~column~0#1 < ~ARR_SIZE~0); {2584#(and (<= |ULTIMATE.start_main_~row~0#1| 0) (< 1 ~ARR_SIZE~0))} is VALID [2022-02-20 14:24:30,525 INFO L290 TraceCheckUtils]: 12: Hoare triple {2584#(and (<= |ULTIMATE.start_main_~row~0#1| 0) (< 1 ~ARR_SIZE~0))} main_#t~post5#1 := main_~row~0#1;main_~row~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {2597#(and (< 1 ~ARR_SIZE~0) (<= |ULTIMATE.start_main_~row~0#1| 1))} is VALID [2022-02-20 14:24:30,525 INFO L290 TraceCheckUtils]: 13: Hoare triple {2597#(and (< 1 ~ARR_SIZE~0) (<= |ULTIMATE.start_main_~row~0#1| 1))} assume !(main_~row~0#1 < ~ARR_SIZE~0); {2553#false} is VALID [2022-02-20 14:24:30,526 INFO L290 TraceCheckUtils]: 14: Hoare triple {2553#false} main_~row~0#1 := 0; {2553#false} is VALID [2022-02-20 14:24:30,526 INFO L290 TraceCheckUtils]: 15: Hoare triple {2553#false} assume !!(main_~row~0#1 < ~ARR_SIZE~0);main_~column~0#1 := 0; {2553#false} is VALID [2022-02-20 14:24:30,526 INFO L290 TraceCheckUtils]: 16: Hoare triple {2553#false} assume !!(main_~column~0#1 < ~ARR_SIZE~0);call main_#t~mem9#1 := read~int(main_~#array~0#1.base, main_~#array~0#1.offset + main_~row~0#1 * (4 * (if ~ARR_SIZE~0 % 4294967296 <= 2147483647 then ~ARR_SIZE~0 % 4294967296 else ~ARR_SIZE~0 % 4294967296 - 4294967296)) + 4 * main_~column~0#1, 4);main_~sum~0#1 := main_~sum~0#1 + main_#t~mem9#1;havoc main_#t~mem9#1; {2553#false} is VALID [2022-02-20 14:24:30,526 INFO L290 TraceCheckUtils]: 17: Hoare triple {2553#false} main_#t~post8#1 := main_~column~0#1;main_~column~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; {2553#false} is VALID [2022-02-20 14:24:30,526 INFO L290 TraceCheckUtils]: 18: Hoare triple {2553#false} assume !(main_~column~0#1 < ~ARR_SIZE~0); {2553#false} is VALID [2022-02-20 14:24:30,526 INFO L290 TraceCheckUtils]: 19: Hoare triple {2553#false} main_#t~post7#1 := main_~row~0#1;main_~row~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {2553#false} is VALID [2022-02-20 14:24:30,526 INFO L290 TraceCheckUtils]: 20: Hoare triple {2553#false} assume !(main_~row~0#1 < ~ARR_SIZE~0); {2553#false} is VALID [2022-02-20 14:24:30,526 INFO L290 TraceCheckUtils]: 21: Hoare triple {2553#false} assume { :begin_inline___VERIFIER_assert } true;__VERIFIER_assert_#in~cond#1 := (if 2 * main_~sum~0#1 == ~ARR_SIZE~0 * (~ARR_SIZE~0 - 1) * (~ARR_SIZE~0 - 1) then 1 else 0);havoc __VERIFIER_assert_~cond#1;__VERIFIER_assert_~cond#1 := __VERIFIER_assert_#in~cond#1; {2553#false} is VALID [2022-02-20 14:24:30,527 INFO L290 TraceCheckUtils]: 22: Hoare triple {2553#false} assume 0 == __VERIFIER_assert_~cond#1; {2553#false} is VALID [2022-02-20 14:24:30,527 INFO L290 TraceCheckUtils]: 23: Hoare triple {2553#false} assume !false; {2553#false} is VALID [2022-02-20 14:24:30,527 INFO L134 CoverageAnalysis]: Checked inductivity of 8 backedges. 1 proven. 5 refuted. 0 times theorem prover too weak. 2 trivial. 0 not checked. [2022-02-20 14:24:30,527 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 14:24:30,647 INFO L290 TraceCheckUtils]: 23: Hoare triple {2553#false} assume !false; {2553#false} is VALID [2022-02-20 14:24:30,648 INFO L290 TraceCheckUtils]: 22: Hoare triple {2553#false} assume 0 == __VERIFIER_assert_~cond#1; {2553#false} is VALID [2022-02-20 14:24:30,648 INFO L290 TraceCheckUtils]: 21: Hoare triple {2553#false} assume { :begin_inline___VERIFIER_assert } true;__VERIFIER_assert_#in~cond#1 := (if 2 * main_~sum~0#1 == ~ARR_SIZE~0 * (~ARR_SIZE~0 - 1) * (~ARR_SIZE~0 - 1) then 1 else 0);havoc __VERIFIER_assert_~cond#1;__VERIFIER_assert_~cond#1 := __VERIFIER_assert_#in~cond#1; {2553#false} is VALID [2022-02-20 14:24:30,648 INFO L290 TraceCheckUtils]: 20: Hoare triple {2553#false} assume !(main_~row~0#1 < ~ARR_SIZE~0); {2553#false} is VALID [2022-02-20 14:24:30,648 INFO L290 TraceCheckUtils]: 19: Hoare triple {2553#false} main_#t~post7#1 := main_~row~0#1;main_~row~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {2553#false} is VALID [2022-02-20 14:24:30,648 INFO L290 TraceCheckUtils]: 18: Hoare triple {2553#false} assume !(main_~column~0#1 < ~ARR_SIZE~0); {2553#false} is VALID [2022-02-20 14:24:30,648 INFO L290 TraceCheckUtils]: 17: Hoare triple {2553#false} main_#t~post8#1 := main_~column~0#1;main_~column~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; {2553#false} is VALID [2022-02-20 14:24:30,648 INFO L290 TraceCheckUtils]: 16: Hoare triple {2553#false} assume !!(main_~column~0#1 < ~ARR_SIZE~0);call main_#t~mem9#1 := read~int(main_~#array~0#1.base, main_~#array~0#1.offset + main_~row~0#1 * (4 * (if ~ARR_SIZE~0 % 4294967296 <= 2147483647 then ~ARR_SIZE~0 % 4294967296 else ~ARR_SIZE~0 % 4294967296 - 4294967296)) + 4 * main_~column~0#1, 4);main_~sum~0#1 := main_~sum~0#1 + main_#t~mem9#1;havoc main_#t~mem9#1; {2553#false} is VALID [2022-02-20 14:24:30,648 INFO L290 TraceCheckUtils]: 15: Hoare triple {2553#false} assume !!(main_~row~0#1 < ~ARR_SIZE~0);main_~column~0#1 := 0; {2553#false} is VALID [2022-02-20 14:24:30,648 INFO L290 TraceCheckUtils]: 14: Hoare triple {2553#false} main_~row~0#1 := 0; {2553#false} is VALID [2022-02-20 14:24:30,652 INFO L290 TraceCheckUtils]: 13: Hoare triple {2661#(< |ULTIMATE.start_main_~row~0#1| ~ARR_SIZE~0)} assume !(main_~row~0#1 < ~ARR_SIZE~0); {2553#false} is VALID [2022-02-20 14:24:30,653 INFO L290 TraceCheckUtils]: 12: Hoare triple {2665#(< (+ |ULTIMATE.start_main_~row~0#1| 1) ~ARR_SIZE~0)} main_#t~post5#1 := main_~row~0#1;main_~row~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {2661#(< |ULTIMATE.start_main_~row~0#1| ~ARR_SIZE~0)} is VALID [2022-02-20 14:24:30,654 INFO L290 TraceCheckUtils]: 11: Hoare triple {2665#(< (+ |ULTIMATE.start_main_~row~0#1| 1) ~ARR_SIZE~0)} assume !(main_~column~0#1 < ~ARR_SIZE~0); {2665#(< (+ |ULTIMATE.start_main_~row~0#1| 1) ~ARR_SIZE~0)} is VALID [2022-02-20 14:24:30,654 INFO L290 TraceCheckUtils]: 10: Hoare triple {2665#(< (+ |ULTIMATE.start_main_~row~0#1| 1) ~ARR_SIZE~0)} main_#t~post6#1 := main_~column~0#1;main_~column~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {2665#(< (+ |ULTIMATE.start_main_~row~0#1| 1) ~ARR_SIZE~0)} is VALID [2022-02-20 14:24:30,654 INFO L290 TraceCheckUtils]: 9: Hoare triple {2665#(< (+ |ULTIMATE.start_main_~row~0#1| 1) ~ARR_SIZE~0)} assume !(main_~row~0#1 == main_~column~0#1);call write~int(main_~row~0#1, main_~#array~0#1.base, main_~#array~0#1.offset + main_~row~0#1 * (4 * (if ~ARR_SIZE~0 % 4294967296 <= 2147483647 then ~ARR_SIZE~0 % 4294967296 else ~ARR_SIZE~0 % 4294967296 - 4294967296)) + 4 * main_~column~0#1, 4); {2665#(< (+ |ULTIMATE.start_main_~row~0#1| 1) ~ARR_SIZE~0)} is VALID [2022-02-20 14:24:30,655 INFO L290 TraceCheckUtils]: 8: Hoare triple {2678#(<= (+ |ULTIMATE.start_main_~row~0#1| 1) |ULTIMATE.start_main_~column~0#1|)} assume !!(main_~column~0#1 < ~ARR_SIZE~0); {2665#(< (+ |ULTIMATE.start_main_~row~0#1| 1) ~ARR_SIZE~0)} is VALID [2022-02-20 14:24:30,656 INFO L290 TraceCheckUtils]: 7: Hoare triple {2682#(<= |ULTIMATE.start_main_~row~0#1| |ULTIMATE.start_main_~column~0#1|)} main_#t~post6#1 := main_~column~0#1;main_~column~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {2678#(<= (+ |ULTIMATE.start_main_~row~0#1| 1) |ULTIMATE.start_main_~column~0#1|)} is VALID [2022-02-20 14:24:30,656 INFO L290 TraceCheckUtils]: 6: Hoare triple {2682#(<= |ULTIMATE.start_main_~row~0#1| |ULTIMATE.start_main_~column~0#1|)} assume !(main_~row~0#1 == main_~column~0#1);call write~int(main_~row~0#1, main_~#array~0#1.base, main_~#array~0#1.offset + main_~row~0#1 * (4 * (if ~ARR_SIZE~0 % 4294967296 <= 2147483647 then ~ARR_SIZE~0 % 4294967296 else ~ARR_SIZE~0 % 4294967296 - 4294967296)) + 4 * main_~column~0#1, 4); {2682#(<= |ULTIMATE.start_main_~row~0#1| |ULTIMATE.start_main_~column~0#1|)} is VALID [2022-02-20 14:24:30,656 INFO L290 TraceCheckUtils]: 5: Hoare triple {2682#(<= |ULTIMATE.start_main_~row~0#1| |ULTIMATE.start_main_~column~0#1|)} assume !!(main_~column~0#1 < ~ARR_SIZE~0); {2682#(<= |ULTIMATE.start_main_~row~0#1| |ULTIMATE.start_main_~column~0#1|)} is VALID [2022-02-20 14:24:30,657 INFO L290 TraceCheckUtils]: 4: Hoare triple {2566#(<= |ULTIMATE.start_main_~row~0#1| 0)} assume !!(main_~row~0#1 < ~ARR_SIZE~0);main_~column~0#1 := 0; {2682#(<= |ULTIMATE.start_main_~row~0#1| |ULTIMATE.start_main_~column~0#1|)} is VALID [2022-02-20 14:24:30,657 INFO L290 TraceCheckUtils]: 3: Hoare triple {2552#true} assume { :end_inline_assume_abort_if_not } true;call main_~#array~0#1.base, main_~#array~0#1.offset := #Ultimate.allocOnStack(4 * (if ~ARR_SIZE~0 % 4294967296 <= 2147483647 then ~ARR_SIZE~0 % 4294967296 else ~ARR_SIZE~0 % 4294967296 - 4294967296) * (if ~ARR_SIZE~0 % 4294967296 <= 2147483647 then ~ARR_SIZE~0 % 4294967296 else ~ARR_SIZE~0 % 4294967296 - 4294967296));main_~row~0#1 := 0;main_~column~0#1 := 0;main_~sum~0#1 := 0;main_~row~0#1 := 0; {2566#(<= |ULTIMATE.start_main_~row~0#1| 0)} is VALID [2022-02-20 14:24:30,657 INFO L290 TraceCheckUtils]: 2: Hoare triple {2552#true} assume !(0 == assume_abort_if_not_~cond#1); {2552#true} is VALID [2022-02-20 14:24:30,658 INFO L290 TraceCheckUtils]: 1: Hoare triple {2552#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~post6#1, main_#t~post5#1, main_#t~mem9#1, main_#t~post8#1, main_#t~post7#1, main_~#array~0#1.base, main_~#array~0#1.offset, main_~row~0#1, main_~column~0#1, main_~sum~0#1;assume -32768 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 32767;~ARR_SIZE~0 := main_#t~nondet4#1;havoc main_#t~nondet4#1;assume { :begin_inline_assume_abort_if_not } true;assume_abort_if_not_#in~cond#1 := (if ~ARR_SIZE~0 > 0 then 1 else 0);havoc assume_abort_if_not_~cond#1;assume_abort_if_not_~cond#1 := assume_abort_if_not_#in~cond#1; {2552#true} is VALID [2022-02-20 14:24:30,658 INFO L290 TraceCheckUtils]: 0: Hoare triple {2552#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~ARR_SIZE~0 := 0; {2552#true} is VALID [2022-02-20 14:24:30,658 INFO L134 CoverageAnalysis]: Checked inductivity of 8 backedges. 1 proven. 5 refuted. 0 times theorem prover too weak. 2 trivial. 0 not checked. [2022-02-20 14:24:30,658 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 14:24:30,658 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1356345583] [2022-02-20 14:24:30,658 WARN L317 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-02-20 14:24:30,658 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [930021766] [2022-02-20 14:24:30,658 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [930021766] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 14:24:30,658 INFO L191 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-02-20 14:24:30,658 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 7] total 11 [2022-02-20 14:24:30,658 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1051232682] [2022-02-20 14:24:30,658 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-02-20 14:24:30,659 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 11 states have (on average 3.090909090909091) internal successors, (34), 11 states have internal predecessors, (34), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 24 [2022-02-20 14:24:30,659 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 14:24:30,659 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 11 states, 11 states have (on average 3.090909090909091) internal successors, (34), 11 states have internal predecessors, (34), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:24:30,686 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 34 edges. 34 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 14:24:30,686 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 11 states [2022-02-20 14:24:30,686 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 14:24:30,686 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2022-02-20 14:24:30,686 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=32, Invalid=78, Unknown=0, NotChecked=0, Total=110 [2022-02-20 14:24:30,687 INFO L87 Difference]: Start difference. First operand 101 states and 132 transitions. Second operand has 11 states, 11 states have (on average 3.090909090909091) internal successors, (34), 11 states have internal predecessors, (34), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:24:31,372 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 14:24:31,372 INFO L93 Difference]: Finished difference Result 216 states and 284 transitions. [2022-02-20 14:24:31,372 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 17 states. [2022-02-20 14:24:31,372 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 11 states have (on average 3.090909090909091) internal successors, (34), 11 states have internal predecessors, (34), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 24 [2022-02-20 14:24:31,373 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 14:24:31,373 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 11 states have (on average 3.090909090909091) internal successors, (34), 11 states have internal predecessors, (34), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:24:31,374 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 99 transitions. [2022-02-20 14:24:31,374 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 11 states have (on average 3.090909090909091) internal successors, (34), 11 states have internal predecessors, (34), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:24:31,375 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 17 states to 17 states and 99 transitions. [2022-02-20 14:24:31,375 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 17 states and 99 transitions. [2022-02-20 14:24:31,458 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 99 edges. 99 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 14:24:31,459 INFO L225 Difference]: With dead ends: 216 [2022-02-20 14:24:31,459 INFO L226 Difference]: Without dead ends: 144 [2022-02-20 14:24:31,460 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 56 GetRequests, 37 SyntacticMatches, 0 SemanticMatches, 19 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 77 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=126, Invalid=294, Unknown=0, NotChecked=0, Total=420 [2022-02-20 14:24:31,460 INFO L933 BasicCegarLoop]: 8 mSDtfsCounter, 55 mSDsluCounter, 22 mSDsCounter, 0 mSdLazyCounter, 204 mSolverCounterSat, 40 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.2s Time, 0 mProtectedPredicate, 0 mProtectedAction, 55 SdHoareTripleChecker+Valid, 30 SdHoareTripleChecker+Invalid, 244 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 40 IncrementalHoareTripleChecker+Valid, 204 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.2s IncrementalHoareTripleChecker+Time [2022-02-20 14:24:31,461 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [55 Valid, 30 Invalid, 244 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [40 Valid, 204 Invalid, 0 Unknown, 0 Unchecked, 0.2s Time] [2022-02-20 14:24:31,461 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 144 states. [2022-02-20 14:24:31,600 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 144 to 99. [2022-02-20 14:24:31,600 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 14:24:31,600 INFO L82 GeneralOperation]: Start isEquivalent. First operand 144 states. Second operand has 99 states, 98 states have (on average 1.2857142857142858) internal successors, (126), 98 states have internal predecessors, (126), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:24:31,601 INFO L74 IsIncluded]: Start isIncluded. First operand 144 states. Second operand has 99 states, 98 states have (on average 1.2857142857142858) internal successors, (126), 98 states have internal predecessors, (126), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:24:31,601 INFO L87 Difference]: Start difference. First operand 144 states. Second operand has 99 states, 98 states have (on average 1.2857142857142858) internal successors, (126), 98 states have internal predecessors, (126), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:24:31,603 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 14:24:31,603 INFO L93 Difference]: Finished difference Result 144 states and 181 transitions. [2022-02-20 14:24:31,603 INFO L276 IsEmpty]: Start isEmpty. Operand 144 states and 181 transitions. [2022-02-20 14:24:31,604 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 14:24:31,604 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 14:24:31,604 INFO L74 IsIncluded]: Start isIncluded. First operand has 99 states, 98 states have (on average 1.2857142857142858) internal successors, (126), 98 states have internal predecessors, (126), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 144 states. [2022-02-20 14:24:31,604 INFO L87 Difference]: Start difference. First operand has 99 states, 98 states have (on average 1.2857142857142858) internal successors, (126), 98 states have internal predecessors, (126), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 144 states. [2022-02-20 14:24:31,606 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 14:24:31,606 INFO L93 Difference]: Finished difference Result 144 states and 181 transitions. [2022-02-20 14:24:31,606 INFO L276 IsEmpty]: Start isEmpty. Operand 144 states and 181 transitions. [2022-02-20 14:24:31,607 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 14:24:31,607 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 14:24:31,607 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 14:24:31,607 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 14:24:31,607 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 99 states, 98 states have (on average 1.2857142857142858) internal successors, (126), 98 states have internal predecessors, (126), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:24:31,609 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 99 states to 99 states and 126 transitions. [2022-02-20 14:24:31,609 INFO L78 Accepts]: Start accepts. Automaton has 99 states and 126 transitions. Word has length 24 [2022-02-20 14:24:31,609 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 14:24:31,609 INFO L470 AbstractCegarLoop]: Abstraction has 99 states and 126 transitions. [2022-02-20 14:24:31,609 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 11 states, 11 states have (on average 3.090909090909091) internal successors, (34), 11 states have internal predecessors, (34), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:24:31,609 INFO L276 IsEmpty]: Start isEmpty. Operand 99 states and 126 transitions. [2022-02-20 14:24:31,610 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 27 [2022-02-20 14:24:31,610 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 14:24:31,610 INFO L514 BasicCegarLoop]: trace histogram [2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 14:24:31,626 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Ended with exit code 0 [2022-02-20 14:24:31,823 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable6,7 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 14:24:31,825 INFO L402 AbstractCegarLoop]: === Iteration 8 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 14:24:31,826 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 14:24:31,826 INFO L85 PathProgramCache]: Analyzing trace with hash -1060244373, now seen corresponding path program 2 times [2022-02-20 14:24:31,826 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 14:24:31,826 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1980476501] [2022-02-20 14:24:31,826 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 14:24:31,826 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 14:24:31,852 ERROR L252 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-02-20 14:24:31,852 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [95972473] [2022-02-20 14:24:31,852 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-02-20 14:24:31,852 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 14:24:31,852 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 14:24:31,853 INFO L229 MonitoredProcess]: Starting monitored process 8 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-02-20 14:24:31,854 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (8)] Waiting until timeout for monitored process [2022-02-20 14:24:31,930 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-02-20 14:24:31,930 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-02-20 14:24:31,931 INFO L263 TraceCheckSpWp]: Trace formula consists of 99 conjuncts, 6 conjunts are in the unsatisfiable core [2022-02-20 14:24:31,938 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 14:24:31,939 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 14:24:32,069 INFO L290 TraceCheckUtils]: 0: Hoare triple {3471#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~ARR_SIZE~0 := 0; {3471#true} is VALID [2022-02-20 14:24:32,069 INFO L290 TraceCheckUtils]: 1: Hoare triple {3471#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~post6#1, main_#t~post5#1, main_#t~mem9#1, main_#t~post8#1, main_#t~post7#1, main_~#array~0#1.base, main_~#array~0#1.offset, main_~row~0#1, main_~column~0#1, main_~sum~0#1;assume -32768 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 32767;~ARR_SIZE~0 := main_#t~nondet4#1;havoc main_#t~nondet4#1;assume { :begin_inline_assume_abort_if_not } true;assume_abort_if_not_#in~cond#1 := (if ~ARR_SIZE~0 > 0 then 1 else 0);havoc assume_abort_if_not_~cond#1;assume_abort_if_not_~cond#1 := assume_abort_if_not_#in~cond#1; {3471#true} is VALID [2022-02-20 14:24:32,069 INFO L290 TraceCheckUtils]: 2: Hoare triple {3471#true} assume !(0 == assume_abort_if_not_~cond#1); {3471#true} is VALID [2022-02-20 14:24:32,069 INFO L290 TraceCheckUtils]: 3: Hoare triple {3471#true} assume { :end_inline_assume_abort_if_not } true;call main_~#array~0#1.base, main_~#array~0#1.offset := #Ultimate.allocOnStack(4 * (if ~ARR_SIZE~0 % 4294967296 <= 2147483647 then ~ARR_SIZE~0 % 4294967296 else ~ARR_SIZE~0 % 4294967296 - 4294967296) * (if ~ARR_SIZE~0 % 4294967296 <= 2147483647 then ~ARR_SIZE~0 % 4294967296 else ~ARR_SIZE~0 % 4294967296 - 4294967296));main_~row~0#1 := 0;main_~column~0#1 := 0;main_~sum~0#1 := 0;main_~row~0#1 := 0; {3471#true} is VALID [2022-02-20 14:24:32,069 INFO L290 TraceCheckUtils]: 4: Hoare triple {3471#true} assume !!(main_~row~0#1 < ~ARR_SIZE~0);main_~column~0#1 := 0; {3488#(<= |ULTIMATE.start_main_~column~0#1| 0)} is VALID [2022-02-20 14:24:32,070 INFO L290 TraceCheckUtils]: 5: Hoare triple {3488#(<= |ULTIMATE.start_main_~column~0#1| 0)} assume !!(main_~column~0#1 < ~ARR_SIZE~0); {3488#(<= |ULTIMATE.start_main_~column~0#1| 0)} is VALID [2022-02-20 14:24:32,070 INFO L290 TraceCheckUtils]: 6: Hoare triple {3488#(<= |ULTIMATE.start_main_~column~0#1| 0)} assume !(main_~row~0#1 == main_~column~0#1);call write~int(main_~row~0#1, main_~#array~0#1.base, main_~#array~0#1.offset + main_~row~0#1 * (4 * (if ~ARR_SIZE~0 % 4294967296 <= 2147483647 then ~ARR_SIZE~0 % 4294967296 else ~ARR_SIZE~0 % 4294967296 - 4294967296)) + 4 * main_~column~0#1, 4); {3488#(<= |ULTIMATE.start_main_~column~0#1| 0)} is VALID [2022-02-20 14:24:32,071 INFO L290 TraceCheckUtils]: 7: Hoare triple {3488#(<= |ULTIMATE.start_main_~column~0#1| 0)} main_#t~post6#1 := main_~column~0#1;main_~column~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {3498#(<= |ULTIMATE.start_main_~column~0#1| 1)} is VALID [2022-02-20 14:24:32,071 INFO L290 TraceCheckUtils]: 8: Hoare triple {3498#(<= |ULTIMATE.start_main_~column~0#1| 1)} assume !(main_~column~0#1 < ~ARR_SIZE~0); {3502#(<= ~ARR_SIZE~0 1)} is VALID [2022-02-20 14:24:32,072 INFO L290 TraceCheckUtils]: 9: Hoare triple {3502#(<= ~ARR_SIZE~0 1)} main_#t~post5#1 := main_~row~0#1;main_~row~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {3502#(<= ~ARR_SIZE~0 1)} is VALID [2022-02-20 14:24:32,072 INFO L290 TraceCheckUtils]: 10: Hoare triple {3502#(<= ~ARR_SIZE~0 1)} assume !(main_~row~0#1 < ~ARR_SIZE~0); {3502#(<= ~ARR_SIZE~0 1)} is VALID [2022-02-20 14:24:32,072 INFO L290 TraceCheckUtils]: 11: Hoare triple {3502#(<= ~ARR_SIZE~0 1)} main_~row~0#1 := 0; {3512#(and (<= ~ARR_SIZE~0 1) (<= 0 |ULTIMATE.start_main_~row~0#1|))} is VALID [2022-02-20 14:24:32,073 INFO L290 TraceCheckUtils]: 12: Hoare triple {3512#(and (<= ~ARR_SIZE~0 1) (<= 0 |ULTIMATE.start_main_~row~0#1|))} assume !!(main_~row~0#1 < ~ARR_SIZE~0);main_~column~0#1 := 0; {3512#(and (<= ~ARR_SIZE~0 1) (<= 0 |ULTIMATE.start_main_~row~0#1|))} is VALID [2022-02-20 14:24:32,073 INFO L290 TraceCheckUtils]: 13: Hoare triple {3512#(and (<= ~ARR_SIZE~0 1) (<= 0 |ULTIMATE.start_main_~row~0#1|))} assume !!(main_~column~0#1 < ~ARR_SIZE~0);call main_#t~mem9#1 := read~int(main_~#array~0#1.base, main_~#array~0#1.offset + main_~row~0#1 * (4 * (if ~ARR_SIZE~0 % 4294967296 <= 2147483647 then ~ARR_SIZE~0 % 4294967296 else ~ARR_SIZE~0 % 4294967296 - 4294967296)) + 4 * main_~column~0#1, 4);main_~sum~0#1 := main_~sum~0#1 + main_#t~mem9#1;havoc main_#t~mem9#1; {3512#(and (<= ~ARR_SIZE~0 1) (<= 0 |ULTIMATE.start_main_~row~0#1|))} is VALID [2022-02-20 14:24:32,074 INFO L290 TraceCheckUtils]: 14: Hoare triple {3512#(and (<= ~ARR_SIZE~0 1) (<= 0 |ULTIMATE.start_main_~row~0#1|))} main_#t~post8#1 := main_~column~0#1;main_~column~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; {3512#(and (<= ~ARR_SIZE~0 1) (<= 0 |ULTIMATE.start_main_~row~0#1|))} is VALID [2022-02-20 14:24:32,074 INFO L290 TraceCheckUtils]: 15: Hoare triple {3512#(and (<= ~ARR_SIZE~0 1) (<= 0 |ULTIMATE.start_main_~row~0#1|))} assume !(main_~column~0#1 < ~ARR_SIZE~0); {3512#(and (<= ~ARR_SIZE~0 1) (<= 0 |ULTIMATE.start_main_~row~0#1|))} is VALID [2022-02-20 14:24:32,075 INFO L290 TraceCheckUtils]: 16: Hoare triple {3512#(and (<= ~ARR_SIZE~0 1) (<= 0 |ULTIMATE.start_main_~row~0#1|))} main_#t~post7#1 := main_~row~0#1;main_~row~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {3528#(and (<= ~ARR_SIZE~0 1) (<= 1 |ULTIMATE.start_main_~row~0#1|))} is VALID [2022-02-20 14:24:32,075 INFO L290 TraceCheckUtils]: 17: Hoare triple {3528#(and (<= ~ARR_SIZE~0 1) (<= 1 |ULTIMATE.start_main_~row~0#1|))} assume !!(main_~row~0#1 < ~ARR_SIZE~0);main_~column~0#1 := 0; {3472#false} is VALID [2022-02-20 14:24:32,075 INFO L290 TraceCheckUtils]: 18: Hoare triple {3472#false} assume !!(main_~column~0#1 < ~ARR_SIZE~0);call main_#t~mem9#1 := read~int(main_~#array~0#1.base, main_~#array~0#1.offset + main_~row~0#1 * (4 * (if ~ARR_SIZE~0 % 4294967296 <= 2147483647 then ~ARR_SIZE~0 % 4294967296 else ~ARR_SIZE~0 % 4294967296 - 4294967296)) + 4 * main_~column~0#1, 4);main_~sum~0#1 := main_~sum~0#1 + main_#t~mem9#1;havoc main_#t~mem9#1; {3472#false} is VALID [2022-02-20 14:24:32,075 INFO L290 TraceCheckUtils]: 19: Hoare triple {3472#false} main_#t~post8#1 := main_~column~0#1;main_~column~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; {3472#false} is VALID [2022-02-20 14:24:32,076 INFO L290 TraceCheckUtils]: 20: Hoare triple {3472#false} assume !(main_~column~0#1 < ~ARR_SIZE~0); {3472#false} is VALID [2022-02-20 14:24:32,076 INFO L290 TraceCheckUtils]: 21: Hoare triple {3472#false} main_#t~post7#1 := main_~row~0#1;main_~row~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {3472#false} is VALID [2022-02-20 14:24:32,076 INFO L290 TraceCheckUtils]: 22: Hoare triple {3472#false} assume !(main_~row~0#1 < ~ARR_SIZE~0); {3472#false} is VALID [2022-02-20 14:24:32,076 INFO L290 TraceCheckUtils]: 23: Hoare triple {3472#false} assume { :begin_inline___VERIFIER_assert } true;__VERIFIER_assert_#in~cond#1 := (if 2 * main_~sum~0#1 == ~ARR_SIZE~0 * (~ARR_SIZE~0 - 1) * (~ARR_SIZE~0 - 1) then 1 else 0);havoc __VERIFIER_assert_~cond#1;__VERIFIER_assert_~cond#1 := __VERIFIER_assert_#in~cond#1; {3472#false} is VALID [2022-02-20 14:24:32,076 INFO L290 TraceCheckUtils]: 24: Hoare triple {3472#false} assume 0 == __VERIFIER_assert_~cond#1; {3472#false} is VALID [2022-02-20 14:24:32,076 INFO L290 TraceCheckUtils]: 25: Hoare triple {3472#false} assume !false; {3472#false} is VALID [2022-02-20 14:24:32,076 INFO L134 CoverageAnalysis]: Checked inductivity of 13 backedges. 10 proven. 1 refuted. 0 times theorem prover too weak. 2 trivial. 0 not checked. [2022-02-20 14:24:32,076 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 14:24:32,182 INFO L290 TraceCheckUtils]: 25: Hoare triple {3472#false} assume !false; {3472#false} is VALID [2022-02-20 14:24:32,183 INFO L290 TraceCheckUtils]: 24: Hoare triple {3472#false} assume 0 == __VERIFIER_assert_~cond#1; {3472#false} is VALID [2022-02-20 14:24:32,183 INFO L290 TraceCheckUtils]: 23: Hoare triple {3472#false} assume { :begin_inline___VERIFIER_assert } true;__VERIFIER_assert_#in~cond#1 := (if 2 * main_~sum~0#1 == ~ARR_SIZE~0 * (~ARR_SIZE~0 - 1) * (~ARR_SIZE~0 - 1) then 1 else 0);havoc __VERIFIER_assert_~cond#1;__VERIFIER_assert_~cond#1 := __VERIFIER_assert_#in~cond#1; {3472#false} is VALID [2022-02-20 14:24:32,183 INFO L290 TraceCheckUtils]: 22: Hoare triple {3472#false} assume !(main_~row~0#1 < ~ARR_SIZE~0); {3472#false} is VALID [2022-02-20 14:24:32,183 INFO L290 TraceCheckUtils]: 21: Hoare triple {3472#false} main_#t~post7#1 := main_~row~0#1;main_~row~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {3472#false} is VALID [2022-02-20 14:24:32,183 INFO L290 TraceCheckUtils]: 20: Hoare triple {3472#false} assume !(main_~column~0#1 < ~ARR_SIZE~0); {3472#false} is VALID [2022-02-20 14:24:32,183 INFO L290 TraceCheckUtils]: 19: Hoare triple {3472#false} main_#t~post8#1 := main_~column~0#1;main_~column~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; {3472#false} is VALID [2022-02-20 14:24:32,183 INFO L290 TraceCheckUtils]: 18: Hoare triple {3472#false} assume !!(main_~column~0#1 < ~ARR_SIZE~0);call main_#t~mem9#1 := read~int(main_~#array~0#1.base, main_~#array~0#1.offset + main_~row~0#1 * (4 * (if ~ARR_SIZE~0 % 4294967296 <= 2147483647 then ~ARR_SIZE~0 % 4294967296 else ~ARR_SIZE~0 % 4294967296 - 4294967296)) + 4 * main_~column~0#1, 4);main_~sum~0#1 := main_~sum~0#1 + main_#t~mem9#1;havoc main_#t~mem9#1; {3472#false} is VALID [2022-02-20 14:24:32,185 INFO L290 TraceCheckUtils]: 17: Hoare triple {3580#(not (< |ULTIMATE.start_main_~row~0#1| ~ARR_SIZE~0))} assume !!(main_~row~0#1 < ~ARR_SIZE~0);main_~column~0#1 := 0; {3472#false} is VALID [2022-02-20 14:24:32,188 INFO L290 TraceCheckUtils]: 16: Hoare triple {3584#(<= ~ARR_SIZE~0 (+ |ULTIMATE.start_main_~row~0#1| 1))} main_#t~post7#1 := main_~row~0#1;main_~row~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {3580#(not (< |ULTIMATE.start_main_~row~0#1| ~ARR_SIZE~0))} is VALID [2022-02-20 14:24:32,189 INFO L290 TraceCheckUtils]: 15: Hoare triple {3584#(<= ~ARR_SIZE~0 (+ |ULTIMATE.start_main_~row~0#1| 1))} assume !(main_~column~0#1 < ~ARR_SIZE~0); {3584#(<= ~ARR_SIZE~0 (+ |ULTIMATE.start_main_~row~0#1| 1))} is VALID [2022-02-20 14:24:32,190 INFO L290 TraceCheckUtils]: 14: Hoare triple {3584#(<= ~ARR_SIZE~0 (+ |ULTIMATE.start_main_~row~0#1| 1))} main_#t~post8#1 := main_~column~0#1;main_~column~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; {3584#(<= ~ARR_SIZE~0 (+ |ULTIMATE.start_main_~row~0#1| 1))} is VALID [2022-02-20 14:24:32,190 INFO L290 TraceCheckUtils]: 13: Hoare triple {3584#(<= ~ARR_SIZE~0 (+ |ULTIMATE.start_main_~row~0#1| 1))} assume !!(main_~column~0#1 < ~ARR_SIZE~0);call main_#t~mem9#1 := read~int(main_~#array~0#1.base, main_~#array~0#1.offset + main_~row~0#1 * (4 * (if ~ARR_SIZE~0 % 4294967296 <= 2147483647 then ~ARR_SIZE~0 % 4294967296 else ~ARR_SIZE~0 % 4294967296 - 4294967296)) + 4 * main_~column~0#1, 4);main_~sum~0#1 := main_~sum~0#1 + main_#t~mem9#1;havoc main_#t~mem9#1; {3584#(<= ~ARR_SIZE~0 (+ |ULTIMATE.start_main_~row~0#1| 1))} is VALID [2022-02-20 14:24:32,190 INFO L290 TraceCheckUtils]: 12: Hoare triple {3584#(<= ~ARR_SIZE~0 (+ |ULTIMATE.start_main_~row~0#1| 1))} assume !!(main_~row~0#1 < ~ARR_SIZE~0);main_~column~0#1 := 0; {3584#(<= ~ARR_SIZE~0 (+ |ULTIMATE.start_main_~row~0#1| 1))} is VALID [2022-02-20 14:24:32,190 INFO L290 TraceCheckUtils]: 11: Hoare triple {3502#(<= ~ARR_SIZE~0 1)} main_~row~0#1 := 0; {3584#(<= ~ARR_SIZE~0 (+ |ULTIMATE.start_main_~row~0#1| 1))} is VALID [2022-02-20 14:24:32,191 INFO L290 TraceCheckUtils]: 10: Hoare triple {3502#(<= ~ARR_SIZE~0 1)} assume !(main_~row~0#1 < ~ARR_SIZE~0); {3502#(<= ~ARR_SIZE~0 1)} is VALID [2022-02-20 14:24:32,191 INFO L290 TraceCheckUtils]: 9: Hoare triple {3502#(<= ~ARR_SIZE~0 1)} main_#t~post5#1 := main_~row~0#1;main_~row~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {3502#(<= ~ARR_SIZE~0 1)} is VALID [2022-02-20 14:24:32,191 INFO L290 TraceCheckUtils]: 8: Hoare triple {3498#(<= |ULTIMATE.start_main_~column~0#1| 1)} assume !(main_~column~0#1 < ~ARR_SIZE~0); {3502#(<= ~ARR_SIZE~0 1)} is VALID [2022-02-20 14:24:32,192 INFO L290 TraceCheckUtils]: 7: Hoare triple {3488#(<= |ULTIMATE.start_main_~column~0#1| 0)} main_#t~post6#1 := main_~column~0#1;main_~column~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {3498#(<= |ULTIMATE.start_main_~column~0#1| 1)} is VALID [2022-02-20 14:24:32,192 INFO L290 TraceCheckUtils]: 6: Hoare triple {3488#(<= |ULTIMATE.start_main_~column~0#1| 0)} assume !(main_~row~0#1 == main_~column~0#1);call write~int(main_~row~0#1, main_~#array~0#1.base, main_~#array~0#1.offset + main_~row~0#1 * (4 * (if ~ARR_SIZE~0 % 4294967296 <= 2147483647 then ~ARR_SIZE~0 % 4294967296 else ~ARR_SIZE~0 % 4294967296 - 4294967296)) + 4 * main_~column~0#1, 4); {3488#(<= |ULTIMATE.start_main_~column~0#1| 0)} is VALID [2022-02-20 14:24:32,192 INFO L290 TraceCheckUtils]: 5: Hoare triple {3488#(<= |ULTIMATE.start_main_~column~0#1| 0)} assume !!(main_~column~0#1 < ~ARR_SIZE~0); {3488#(<= |ULTIMATE.start_main_~column~0#1| 0)} is VALID [2022-02-20 14:24:32,193 INFO L290 TraceCheckUtils]: 4: Hoare triple {3471#true} assume !!(main_~row~0#1 < ~ARR_SIZE~0);main_~column~0#1 := 0; {3488#(<= |ULTIMATE.start_main_~column~0#1| 0)} is VALID [2022-02-20 14:24:32,193 INFO L290 TraceCheckUtils]: 3: Hoare triple {3471#true} assume { :end_inline_assume_abort_if_not } true;call main_~#array~0#1.base, main_~#array~0#1.offset := #Ultimate.allocOnStack(4 * (if ~ARR_SIZE~0 % 4294967296 <= 2147483647 then ~ARR_SIZE~0 % 4294967296 else ~ARR_SIZE~0 % 4294967296 - 4294967296) * (if ~ARR_SIZE~0 % 4294967296 <= 2147483647 then ~ARR_SIZE~0 % 4294967296 else ~ARR_SIZE~0 % 4294967296 - 4294967296));main_~row~0#1 := 0;main_~column~0#1 := 0;main_~sum~0#1 := 0;main_~row~0#1 := 0; {3471#true} is VALID [2022-02-20 14:24:32,193 INFO L290 TraceCheckUtils]: 2: Hoare triple {3471#true} assume !(0 == assume_abort_if_not_~cond#1); {3471#true} is VALID [2022-02-20 14:24:32,193 INFO L290 TraceCheckUtils]: 1: Hoare triple {3471#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~post6#1, main_#t~post5#1, main_#t~mem9#1, main_#t~post8#1, main_#t~post7#1, main_~#array~0#1.base, main_~#array~0#1.offset, main_~row~0#1, main_~column~0#1, main_~sum~0#1;assume -32768 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 32767;~ARR_SIZE~0 := main_#t~nondet4#1;havoc main_#t~nondet4#1;assume { :begin_inline_assume_abort_if_not } true;assume_abort_if_not_#in~cond#1 := (if ~ARR_SIZE~0 > 0 then 1 else 0);havoc assume_abort_if_not_~cond#1;assume_abort_if_not_~cond#1 := assume_abort_if_not_#in~cond#1; {3471#true} is VALID [2022-02-20 14:24:32,193 INFO L290 TraceCheckUtils]: 0: Hoare triple {3471#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~ARR_SIZE~0 := 0; {3471#true} is VALID [2022-02-20 14:24:32,193 INFO L134 CoverageAnalysis]: Checked inductivity of 13 backedges. 10 proven. 1 refuted. 0 times theorem prover too weak. 2 trivial. 0 not checked. [2022-02-20 14:24:32,193 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 14:24:32,193 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1980476501] [2022-02-20 14:24:32,194 WARN L317 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-02-20 14:24:32,194 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [95972473] [2022-02-20 14:24:32,194 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [95972473] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 14:24:32,194 INFO L191 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-02-20 14:24:32,194 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 7] total 9 [2022-02-20 14:24:32,194 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [88027375] [2022-02-20 14:24:32,194 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-02-20 14:24:32,194 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 3.6666666666666665) internal successors, (33), 9 states have internal predecessors, (33), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 26 [2022-02-20 14:24:32,194 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 14:24:32,194 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 9 states, 9 states have (on average 3.6666666666666665) internal successors, (33), 9 states have internal predecessors, (33), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:24:32,237 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 33 edges. 33 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 14:24:32,238 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-02-20 14:24:32,238 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 14:24:32,238 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-02-20 14:24:32,238 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=23, Invalid=49, Unknown=0, NotChecked=0, Total=72 [2022-02-20 14:24:32,239 INFO L87 Difference]: Start difference. First operand 99 states and 126 transitions. Second operand has 9 states, 9 states have (on average 3.6666666666666665) internal successors, (33), 9 states have internal predecessors, (33), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:24:32,632 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 14:24:32,632 INFO L93 Difference]: Finished difference Result 137 states and 164 transitions. [2022-02-20 14:24:32,632 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 12 states. [2022-02-20 14:24:32,632 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 3.6666666666666665) internal successors, (33), 9 states have internal predecessors, (33), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 26 [2022-02-20 14:24:32,632 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 14:24:32,632 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 3.6666666666666665) internal successors, (33), 9 states have internal predecessors, (33), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:24:32,633 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 74 transitions. [2022-02-20 14:24:32,633 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 3.6666666666666665) internal successors, (33), 9 states have internal predecessors, (33), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:24:32,634 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 12 states to 12 states and 74 transitions. [2022-02-20 14:24:32,634 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 12 states and 74 transitions. [2022-02-20 14:24:32,698 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 74 edges. 74 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 14:24:32,699 INFO L225 Difference]: With dead ends: 137 [2022-02-20 14:24:32,699 INFO L226 Difference]: Without dead ends: 101 [2022-02-20 14:24:32,699 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 56 GetRequests, 43 SyntacticMatches, 0 SemanticMatches, 13 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 19 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=68, Invalid=142, Unknown=0, NotChecked=0, Total=210 [2022-02-20 14:24:32,700 INFO L933 BasicCegarLoop]: 9 mSDtfsCounter, 60 mSDsluCounter, 24 mSDsCounter, 0 mSdLazyCounter, 98 mSolverCounterSat, 27 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 60 SdHoareTripleChecker+Valid, 33 SdHoareTripleChecker+Invalid, 125 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 27 IncrementalHoareTripleChecker+Valid, 98 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 14:24:32,700 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [60 Valid, 33 Invalid, 125 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [27 Valid, 98 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 14:24:32,701 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 101 states. [2022-02-20 14:24:32,815 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 101 to 84. [2022-02-20 14:24:32,815 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 14:24:32,815 INFO L82 GeneralOperation]: Start isEquivalent. First operand 101 states. Second operand has 84 states, 83 states have (on average 1.2650602409638554) internal successors, (105), 83 states have internal predecessors, (105), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:24:32,816 INFO L74 IsIncluded]: Start isIncluded. First operand 101 states. Second operand has 84 states, 83 states have (on average 1.2650602409638554) internal successors, (105), 83 states have internal predecessors, (105), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:24:32,816 INFO L87 Difference]: Start difference. First operand 101 states. Second operand has 84 states, 83 states have (on average 1.2650602409638554) internal successors, (105), 83 states have internal predecessors, (105), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:24:32,817 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 14:24:32,818 INFO L93 Difference]: Finished difference Result 101 states and 121 transitions. [2022-02-20 14:24:32,818 INFO L276 IsEmpty]: Start isEmpty. Operand 101 states and 121 transitions. [2022-02-20 14:24:32,818 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 14:24:32,818 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 14:24:32,818 INFO L74 IsIncluded]: Start isIncluded. First operand has 84 states, 83 states have (on average 1.2650602409638554) internal successors, (105), 83 states have internal predecessors, (105), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 101 states. [2022-02-20 14:24:32,818 INFO L87 Difference]: Start difference. First operand has 84 states, 83 states have (on average 1.2650602409638554) internal successors, (105), 83 states have internal predecessors, (105), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 101 states. [2022-02-20 14:24:32,821 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 14:24:32,821 INFO L93 Difference]: Finished difference Result 101 states and 121 transitions. [2022-02-20 14:24:32,821 INFO L276 IsEmpty]: Start isEmpty. Operand 101 states and 121 transitions. [2022-02-20 14:24:32,821 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 14:24:32,821 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 14:24:32,821 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 14:24:32,821 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 14:24:32,822 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 84 states, 83 states have (on average 1.2650602409638554) internal successors, (105), 83 states have internal predecessors, (105), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:24:32,823 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 84 states to 84 states and 105 transitions. [2022-02-20 14:24:32,823 INFO L78 Accepts]: Start accepts. Automaton has 84 states and 105 transitions. Word has length 26 [2022-02-20 14:24:32,823 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 14:24:32,823 INFO L470 AbstractCegarLoop]: Abstraction has 84 states and 105 transitions. [2022-02-20 14:24:32,823 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 9 states have (on average 3.6666666666666665) internal successors, (33), 9 states have internal predecessors, (33), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:24:32,823 INFO L276 IsEmpty]: Start isEmpty. Operand 84 states and 105 transitions. [2022-02-20 14:24:32,823 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 28 [2022-02-20 14:24:32,823 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 14:24:32,824 INFO L514 BasicCegarLoop]: trace histogram [2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 14:24:32,828 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (8)] Forceful destruction successful, exit code 0 [2022-02-20 14:24:33,028 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable7,8 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 14:24:33,028 INFO L402 AbstractCegarLoop]: === Iteration 9 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 14:24:33,029 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 14:24:33,029 INFO L85 PathProgramCache]: Analyzing trace with hash -956437022, now seen corresponding path program 1 times [2022-02-20 14:24:33,029 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 14:24:33,029 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1927207560] [2022-02-20 14:24:33,029 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 14:24:33,029 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 14:24:33,039 ERROR L252 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-02-20 14:24:33,039 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1171721475] [2022-02-20 14:24:33,039 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 14:24:33,039 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 14:24:33,039 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 14:24:33,040 INFO L229 MonitoredProcess]: Starting monitored process 9 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-02-20 14:24:33,049 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (9)] Waiting until timeout for monitored process [2022-02-20 14:24:33,086 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 14:24:33,087 INFO L263 TraceCheckSpWp]: Trace formula consists of 103 conjuncts, 6 conjunts are in the unsatisfiable core [2022-02-20 14:24:33,093 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 14:24:33,094 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 14:24:33,205 INFO L290 TraceCheckUtils]: 0: Hoare triple {4163#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~ARR_SIZE~0 := 0; {4163#true} is VALID [2022-02-20 14:24:33,206 INFO L290 TraceCheckUtils]: 1: Hoare triple {4163#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~post6#1, main_#t~post5#1, main_#t~mem9#1, main_#t~post8#1, main_#t~post7#1, main_~#array~0#1.base, main_~#array~0#1.offset, main_~row~0#1, main_~column~0#1, main_~sum~0#1;assume -32768 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 32767;~ARR_SIZE~0 := main_#t~nondet4#1;havoc main_#t~nondet4#1;assume { :begin_inline_assume_abort_if_not } true;assume_abort_if_not_#in~cond#1 := (if ~ARR_SIZE~0 > 0 then 1 else 0);havoc assume_abort_if_not_~cond#1;assume_abort_if_not_~cond#1 := assume_abort_if_not_#in~cond#1; {4163#true} is VALID [2022-02-20 14:24:33,206 INFO L290 TraceCheckUtils]: 2: Hoare triple {4163#true} assume !(0 == assume_abort_if_not_~cond#1); {4163#true} is VALID [2022-02-20 14:24:33,206 INFO L290 TraceCheckUtils]: 3: Hoare triple {4163#true} assume { :end_inline_assume_abort_if_not } true;call main_~#array~0#1.base, main_~#array~0#1.offset := #Ultimate.allocOnStack(4 * (if ~ARR_SIZE~0 % 4294967296 <= 2147483647 then ~ARR_SIZE~0 % 4294967296 else ~ARR_SIZE~0 % 4294967296 - 4294967296) * (if ~ARR_SIZE~0 % 4294967296 <= 2147483647 then ~ARR_SIZE~0 % 4294967296 else ~ARR_SIZE~0 % 4294967296 - 4294967296));main_~row~0#1 := 0;main_~column~0#1 := 0;main_~sum~0#1 := 0;main_~row~0#1 := 0; {4177#(<= 0 |ULTIMATE.start_main_~row~0#1|)} is VALID [2022-02-20 14:24:33,207 INFO L290 TraceCheckUtils]: 4: Hoare triple {4177#(<= 0 |ULTIMATE.start_main_~row~0#1|)} assume !!(main_~row~0#1 < ~ARR_SIZE~0);main_~column~0#1 := 0; {4181#(and (<= 0 |ULTIMATE.start_main_~row~0#1|) (<= |ULTIMATE.start_main_~column~0#1| 0))} is VALID [2022-02-20 14:24:33,207 INFO L290 TraceCheckUtils]: 5: Hoare triple {4181#(and (<= 0 |ULTIMATE.start_main_~row~0#1|) (<= |ULTIMATE.start_main_~column~0#1| 0))} assume !!(main_~column~0#1 < ~ARR_SIZE~0); {4181#(and (<= 0 |ULTIMATE.start_main_~row~0#1|) (<= |ULTIMATE.start_main_~column~0#1| 0))} is VALID [2022-02-20 14:24:33,207 INFO L290 TraceCheckUtils]: 6: Hoare triple {4181#(and (<= 0 |ULTIMATE.start_main_~row~0#1|) (<= |ULTIMATE.start_main_~column~0#1| 0))} assume !(main_~row~0#1 == main_~column~0#1);call write~int(main_~row~0#1, main_~#array~0#1.base, main_~#array~0#1.offset + main_~row~0#1 * (4 * (if ~ARR_SIZE~0 % 4294967296 <= 2147483647 then ~ARR_SIZE~0 % 4294967296 else ~ARR_SIZE~0 % 4294967296 - 4294967296)) + 4 * main_~column~0#1, 4); {4181#(and (<= 0 |ULTIMATE.start_main_~row~0#1|) (<= |ULTIMATE.start_main_~column~0#1| 0))} is VALID [2022-02-20 14:24:33,208 INFO L290 TraceCheckUtils]: 7: Hoare triple {4181#(and (<= 0 |ULTIMATE.start_main_~row~0#1|) (<= |ULTIMATE.start_main_~column~0#1| 0))} main_#t~post6#1 := main_~column~0#1;main_~column~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {4191#(and (<= 0 |ULTIMATE.start_main_~row~0#1|) (<= |ULTIMATE.start_main_~column~0#1| 1))} is VALID [2022-02-20 14:24:33,209 INFO L290 TraceCheckUtils]: 8: Hoare triple {4191#(and (<= 0 |ULTIMATE.start_main_~row~0#1|) (<= |ULTIMATE.start_main_~column~0#1| 1))} assume !(main_~column~0#1 < ~ARR_SIZE~0); {4195#(and (<= ~ARR_SIZE~0 1) (<= 0 |ULTIMATE.start_main_~row~0#1|))} is VALID [2022-02-20 14:24:33,210 INFO L290 TraceCheckUtils]: 9: Hoare triple {4195#(and (<= ~ARR_SIZE~0 1) (<= 0 |ULTIMATE.start_main_~row~0#1|))} main_#t~post5#1 := main_~row~0#1;main_~row~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {4199#(and (<= ~ARR_SIZE~0 1) (<= 1 |ULTIMATE.start_main_~row~0#1|))} is VALID [2022-02-20 14:24:33,210 INFO L290 TraceCheckUtils]: 10: Hoare triple {4199#(and (<= ~ARR_SIZE~0 1) (<= 1 |ULTIMATE.start_main_~row~0#1|))} assume !!(main_~row~0#1 < ~ARR_SIZE~0);main_~column~0#1 := 0; {4164#false} is VALID [2022-02-20 14:24:33,210 INFO L290 TraceCheckUtils]: 11: Hoare triple {4164#false} assume !!(main_~column~0#1 < ~ARR_SIZE~0); {4164#false} is VALID [2022-02-20 14:24:33,211 INFO L290 TraceCheckUtils]: 12: Hoare triple {4164#false} assume main_~row~0#1 == main_~column~0#1;call write~int(0, main_~#array~0#1.base, main_~#array~0#1.offset + main_~row~0#1 * (4 * (if ~ARR_SIZE~0 % 4294967296 <= 2147483647 then ~ARR_SIZE~0 % 4294967296 else ~ARR_SIZE~0 % 4294967296 - 4294967296)) + 4 * main_~row~0#1, 4); {4164#false} is VALID [2022-02-20 14:24:33,211 INFO L290 TraceCheckUtils]: 13: Hoare triple {4164#false} main_#t~post6#1 := main_~column~0#1;main_~column~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {4164#false} is VALID [2022-02-20 14:24:33,211 INFO L290 TraceCheckUtils]: 14: Hoare triple {4164#false} assume !(main_~column~0#1 < ~ARR_SIZE~0); {4164#false} is VALID [2022-02-20 14:24:33,211 INFO L290 TraceCheckUtils]: 15: Hoare triple {4164#false} main_#t~post5#1 := main_~row~0#1;main_~row~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {4164#false} is VALID [2022-02-20 14:24:33,211 INFO L290 TraceCheckUtils]: 16: Hoare triple {4164#false} assume !(main_~row~0#1 < ~ARR_SIZE~0); {4164#false} is VALID [2022-02-20 14:24:33,211 INFO L290 TraceCheckUtils]: 17: Hoare triple {4164#false} main_~row~0#1 := 0; {4164#false} is VALID [2022-02-20 14:24:33,211 INFO L290 TraceCheckUtils]: 18: Hoare triple {4164#false} assume !!(main_~row~0#1 < ~ARR_SIZE~0);main_~column~0#1 := 0; {4164#false} is VALID [2022-02-20 14:24:33,212 INFO L290 TraceCheckUtils]: 19: Hoare triple {4164#false} assume !!(main_~column~0#1 < ~ARR_SIZE~0);call main_#t~mem9#1 := read~int(main_~#array~0#1.base, main_~#array~0#1.offset + main_~row~0#1 * (4 * (if ~ARR_SIZE~0 % 4294967296 <= 2147483647 then ~ARR_SIZE~0 % 4294967296 else ~ARR_SIZE~0 % 4294967296 - 4294967296)) + 4 * main_~column~0#1, 4);main_~sum~0#1 := main_~sum~0#1 + main_#t~mem9#1;havoc main_#t~mem9#1; {4164#false} is VALID [2022-02-20 14:24:33,212 INFO L290 TraceCheckUtils]: 20: Hoare triple {4164#false} main_#t~post8#1 := main_~column~0#1;main_~column~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; {4164#false} is VALID [2022-02-20 14:24:33,212 INFO L290 TraceCheckUtils]: 21: Hoare triple {4164#false} assume !(main_~column~0#1 < ~ARR_SIZE~0); {4164#false} is VALID [2022-02-20 14:24:33,212 INFO L290 TraceCheckUtils]: 22: Hoare triple {4164#false} main_#t~post7#1 := main_~row~0#1;main_~row~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {4164#false} is VALID [2022-02-20 14:24:33,212 INFO L290 TraceCheckUtils]: 23: Hoare triple {4164#false} assume !(main_~row~0#1 < ~ARR_SIZE~0); {4164#false} is VALID [2022-02-20 14:24:33,212 INFO L290 TraceCheckUtils]: 24: Hoare triple {4164#false} assume { :begin_inline___VERIFIER_assert } true;__VERIFIER_assert_#in~cond#1 := (if 2 * main_~sum~0#1 == ~ARR_SIZE~0 * (~ARR_SIZE~0 - 1) * (~ARR_SIZE~0 - 1) then 1 else 0);havoc __VERIFIER_assert_~cond#1;__VERIFIER_assert_~cond#1 := __VERIFIER_assert_#in~cond#1; {4164#false} is VALID [2022-02-20 14:24:33,212 INFO L290 TraceCheckUtils]: 25: Hoare triple {4164#false} assume 0 == __VERIFIER_assert_~cond#1; {4164#false} is VALID [2022-02-20 14:24:33,212 INFO L290 TraceCheckUtils]: 26: Hoare triple {4164#false} assume !false; {4164#false} is VALID [2022-02-20 14:24:33,212 INFO L134 CoverageAnalysis]: Checked inductivity of 14 backedges. 10 proven. 1 refuted. 0 times theorem prover too weak. 3 trivial. 0 not checked. [2022-02-20 14:24:33,212 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 14:24:33,342 INFO L290 TraceCheckUtils]: 26: Hoare triple {4164#false} assume !false; {4164#false} is VALID [2022-02-20 14:24:33,342 INFO L290 TraceCheckUtils]: 25: Hoare triple {4164#false} assume 0 == __VERIFIER_assert_~cond#1; {4164#false} is VALID [2022-02-20 14:24:33,342 INFO L290 TraceCheckUtils]: 24: Hoare triple {4164#false} assume { :begin_inline___VERIFIER_assert } true;__VERIFIER_assert_#in~cond#1 := (if 2 * main_~sum~0#1 == ~ARR_SIZE~0 * (~ARR_SIZE~0 - 1) * (~ARR_SIZE~0 - 1) then 1 else 0);havoc __VERIFIER_assert_~cond#1;__VERIFIER_assert_~cond#1 := __VERIFIER_assert_#in~cond#1; {4164#false} is VALID [2022-02-20 14:24:33,342 INFO L290 TraceCheckUtils]: 23: Hoare triple {4164#false} assume !(main_~row~0#1 < ~ARR_SIZE~0); {4164#false} is VALID [2022-02-20 14:24:33,342 INFO L290 TraceCheckUtils]: 22: Hoare triple {4164#false} main_#t~post7#1 := main_~row~0#1;main_~row~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {4164#false} is VALID [2022-02-20 14:24:33,342 INFO L290 TraceCheckUtils]: 21: Hoare triple {4164#false} assume !(main_~column~0#1 < ~ARR_SIZE~0); {4164#false} is VALID [2022-02-20 14:24:33,342 INFO L290 TraceCheckUtils]: 20: Hoare triple {4164#false} main_#t~post8#1 := main_~column~0#1;main_~column~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; {4164#false} is VALID [2022-02-20 14:24:33,342 INFO L290 TraceCheckUtils]: 19: Hoare triple {4164#false} assume !!(main_~column~0#1 < ~ARR_SIZE~0);call main_#t~mem9#1 := read~int(main_~#array~0#1.base, main_~#array~0#1.offset + main_~row~0#1 * (4 * (if ~ARR_SIZE~0 % 4294967296 <= 2147483647 then ~ARR_SIZE~0 % 4294967296 else ~ARR_SIZE~0 % 4294967296 - 4294967296)) + 4 * main_~column~0#1, 4);main_~sum~0#1 := main_~sum~0#1 + main_#t~mem9#1;havoc main_#t~mem9#1; {4164#false} is VALID [2022-02-20 14:24:33,342 INFO L290 TraceCheckUtils]: 18: Hoare triple {4164#false} assume !!(main_~row~0#1 < ~ARR_SIZE~0);main_~column~0#1 := 0; {4164#false} is VALID [2022-02-20 14:24:33,342 INFO L290 TraceCheckUtils]: 17: Hoare triple {4164#false} main_~row~0#1 := 0; {4164#false} is VALID [2022-02-20 14:24:33,343 INFO L290 TraceCheckUtils]: 16: Hoare triple {4164#false} assume !(main_~row~0#1 < ~ARR_SIZE~0); {4164#false} is VALID [2022-02-20 14:24:33,343 INFO L290 TraceCheckUtils]: 15: Hoare triple {4164#false} main_#t~post5#1 := main_~row~0#1;main_~row~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {4164#false} is VALID [2022-02-20 14:24:33,343 INFO L290 TraceCheckUtils]: 14: Hoare triple {4164#false} assume !(main_~column~0#1 < ~ARR_SIZE~0); {4164#false} is VALID [2022-02-20 14:24:33,343 INFO L290 TraceCheckUtils]: 13: Hoare triple {4164#false} main_#t~post6#1 := main_~column~0#1;main_~column~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {4164#false} is VALID [2022-02-20 14:24:33,343 INFO L290 TraceCheckUtils]: 12: Hoare triple {4164#false} assume main_~row~0#1 == main_~column~0#1;call write~int(0, main_~#array~0#1.base, main_~#array~0#1.offset + main_~row~0#1 * (4 * (if ~ARR_SIZE~0 % 4294967296 <= 2147483647 then ~ARR_SIZE~0 % 4294967296 else ~ARR_SIZE~0 % 4294967296 - 4294967296)) + 4 * main_~row~0#1, 4); {4164#false} is VALID [2022-02-20 14:24:33,343 INFO L290 TraceCheckUtils]: 11: Hoare triple {4164#false} assume !!(main_~column~0#1 < ~ARR_SIZE~0); {4164#false} is VALID [2022-02-20 14:24:33,345 INFO L290 TraceCheckUtils]: 10: Hoare triple {4299#(not (< |ULTIMATE.start_main_~row~0#1| ~ARR_SIZE~0))} assume !!(main_~row~0#1 < ~ARR_SIZE~0);main_~column~0#1 := 0; {4164#false} is VALID [2022-02-20 14:24:33,346 INFO L290 TraceCheckUtils]: 9: Hoare triple {4303#(<= ~ARR_SIZE~0 (+ |ULTIMATE.start_main_~row~0#1| 1))} main_#t~post5#1 := main_~row~0#1;main_~row~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {4299#(not (< |ULTIMATE.start_main_~row~0#1| ~ARR_SIZE~0))} is VALID [2022-02-20 14:24:33,347 INFO L290 TraceCheckUtils]: 8: Hoare triple {4307#(<= |ULTIMATE.start_main_~column~0#1| (+ |ULTIMATE.start_main_~row~0#1| 1))} assume !(main_~column~0#1 < ~ARR_SIZE~0); {4303#(<= ~ARR_SIZE~0 (+ |ULTIMATE.start_main_~row~0#1| 1))} is VALID [2022-02-20 14:24:33,347 INFO L290 TraceCheckUtils]: 7: Hoare triple {4311#(<= |ULTIMATE.start_main_~column~0#1| |ULTIMATE.start_main_~row~0#1|)} main_#t~post6#1 := main_~column~0#1;main_~column~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {4307#(<= |ULTIMATE.start_main_~column~0#1| (+ |ULTIMATE.start_main_~row~0#1| 1))} is VALID [2022-02-20 14:24:33,347 INFO L290 TraceCheckUtils]: 6: Hoare triple {4311#(<= |ULTIMATE.start_main_~column~0#1| |ULTIMATE.start_main_~row~0#1|)} assume !(main_~row~0#1 == main_~column~0#1);call write~int(main_~row~0#1, main_~#array~0#1.base, main_~#array~0#1.offset + main_~row~0#1 * (4 * (if ~ARR_SIZE~0 % 4294967296 <= 2147483647 then ~ARR_SIZE~0 % 4294967296 else ~ARR_SIZE~0 % 4294967296 - 4294967296)) + 4 * main_~column~0#1, 4); {4311#(<= |ULTIMATE.start_main_~column~0#1| |ULTIMATE.start_main_~row~0#1|)} is VALID [2022-02-20 14:24:33,348 INFO L290 TraceCheckUtils]: 5: Hoare triple {4311#(<= |ULTIMATE.start_main_~column~0#1| |ULTIMATE.start_main_~row~0#1|)} assume !!(main_~column~0#1 < ~ARR_SIZE~0); {4311#(<= |ULTIMATE.start_main_~column~0#1| |ULTIMATE.start_main_~row~0#1|)} is VALID [2022-02-20 14:24:33,348 INFO L290 TraceCheckUtils]: 4: Hoare triple {4177#(<= 0 |ULTIMATE.start_main_~row~0#1|)} assume !!(main_~row~0#1 < ~ARR_SIZE~0);main_~column~0#1 := 0; {4311#(<= |ULTIMATE.start_main_~column~0#1| |ULTIMATE.start_main_~row~0#1|)} is VALID [2022-02-20 14:24:33,349 INFO L290 TraceCheckUtils]: 3: Hoare triple {4163#true} assume { :end_inline_assume_abort_if_not } true;call main_~#array~0#1.base, main_~#array~0#1.offset := #Ultimate.allocOnStack(4 * (if ~ARR_SIZE~0 % 4294967296 <= 2147483647 then ~ARR_SIZE~0 % 4294967296 else ~ARR_SIZE~0 % 4294967296 - 4294967296) * (if ~ARR_SIZE~0 % 4294967296 <= 2147483647 then ~ARR_SIZE~0 % 4294967296 else ~ARR_SIZE~0 % 4294967296 - 4294967296));main_~row~0#1 := 0;main_~column~0#1 := 0;main_~sum~0#1 := 0;main_~row~0#1 := 0; {4177#(<= 0 |ULTIMATE.start_main_~row~0#1|)} is VALID [2022-02-20 14:24:33,349 INFO L290 TraceCheckUtils]: 2: Hoare triple {4163#true} assume !(0 == assume_abort_if_not_~cond#1); {4163#true} is VALID [2022-02-20 14:24:33,349 INFO L290 TraceCheckUtils]: 1: Hoare triple {4163#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~post6#1, main_#t~post5#1, main_#t~mem9#1, main_#t~post8#1, main_#t~post7#1, main_~#array~0#1.base, main_~#array~0#1.offset, main_~row~0#1, main_~column~0#1, main_~sum~0#1;assume -32768 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 32767;~ARR_SIZE~0 := main_#t~nondet4#1;havoc main_#t~nondet4#1;assume { :begin_inline_assume_abort_if_not } true;assume_abort_if_not_#in~cond#1 := (if ~ARR_SIZE~0 > 0 then 1 else 0);havoc assume_abort_if_not_~cond#1;assume_abort_if_not_~cond#1 := assume_abort_if_not_#in~cond#1; {4163#true} is VALID [2022-02-20 14:24:33,349 INFO L290 TraceCheckUtils]: 0: Hoare triple {4163#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~ARR_SIZE~0 := 0; {4163#true} is VALID [2022-02-20 14:24:33,349 INFO L134 CoverageAnalysis]: Checked inductivity of 14 backedges. 9 proven. 2 refuted. 0 times theorem prover too weak. 3 trivial. 0 not checked. [2022-02-20 14:24:33,349 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 14:24:33,349 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1927207560] [2022-02-20 14:24:33,349 WARN L317 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-02-20 14:24:33,349 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1171721475] [2022-02-20 14:24:33,349 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1171721475] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 14:24:33,349 INFO L191 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-02-20 14:24:33,349 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 7] total 11 [2022-02-20 14:24:33,350 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1578962142] [2022-02-20 14:24:33,350 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-02-20 14:24:33,350 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 11 states have (on average 3.090909090909091) internal successors, (34), 11 states have internal predecessors, (34), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 27 [2022-02-20 14:24:33,350 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 14:24:33,350 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 11 states, 11 states have (on average 3.090909090909091) internal successors, (34), 11 states have internal predecessors, (34), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:24:33,378 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 34 edges. 34 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 14:24:33,378 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 11 states [2022-02-20 14:24:33,378 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 14:24:33,378 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 11 interpolants. [2022-02-20 14:24:33,378 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=33, Invalid=77, Unknown=0, NotChecked=0, Total=110 [2022-02-20 14:24:33,379 INFO L87 Difference]: Start difference. First operand 84 states and 105 transitions. Second operand has 11 states, 11 states have (on average 3.090909090909091) internal successors, (34), 11 states have internal predecessors, (34), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:24:33,830 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 14:24:33,830 INFO L93 Difference]: Finished difference Result 153 states and 189 transitions. [2022-02-20 14:24:33,830 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 14 states. [2022-02-20 14:24:33,830 INFO L78 Accepts]: Start accepts. Automaton has has 11 states, 11 states have (on average 3.090909090909091) internal successors, (34), 11 states have internal predecessors, (34), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 27 [2022-02-20 14:24:33,830 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 14:24:33,830 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 11 states have (on average 3.090909090909091) internal successors, (34), 11 states have internal predecessors, (34), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:24:33,831 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 79 transitions. [2022-02-20 14:24:33,831 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 11 states, 11 states have (on average 3.090909090909091) internal successors, (34), 11 states have internal predecessors, (34), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:24:33,832 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 14 states to 14 states and 79 transitions. [2022-02-20 14:24:33,832 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 14 states and 79 transitions. [2022-02-20 14:24:33,892 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 79 edges. 79 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 14:24:33,893 INFO L225 Difference]: With dead ends: 153 [2022-02-20 14:24:33,893 INFO L226 Difference]: Without dead ends: 87 [2022-02-20 14:24:33,894 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 61 GetRequests, 43 SyntacticMatches, 0 SemanticMatches, 18 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 67 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=118, Invalid=262, Unknown=0, NotChecked=0, Total=380 [2022-02-20 14:24:33,894 INFO L933 BasicCegarLoop]: 7 mSDtfsCounter, 82 mSDsluCounter, 17 mSDsCounter, 0 mSdLazyCounter, 116 mSolverCounterSat, 45 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 82 SdHoareTripleChecker+Valid, 24 SdHoareTripleChecker+Invalid, 161 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 45 IncrementalHoareTripleChecker+Valid, 116 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 14:24:33,894 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [82 Valid, 24 Invalid, 161 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [45 Valid, 116 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 14:24:33,895 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 87 states. [2022-02-20 14:24:33,985 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 87 to 67. [2022-02-20 14:24:33,985 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 14:24:33,986 INFO L82 GeneralOperation]: Start isEquivalent. First operand 87 states. Second operand has 67 states, 66 states have (on average 1.2424242424242424) internal successors, (82), 66 states have internal predecessors, (82), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:24:33,986 INFO L74 IsIncluded]: Start isIncluded. First operand 87 states. Second operand has 67 states, 66 states have (on average 1.2424242424242424) internal successors, (82), 66 states have internal predecessors, (82), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:24:33,986 INFO L87 Difference]: Start difference. First operand 87 states. Second operand has 67 states, 66 states have (on average 1.2424242424242424) internal successors, (82), 66 states have internal predecessors, (82), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:24:33,987 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 14:24:33,987 INFO L93 Difference]: Finished difference Result 87 states and 102 transitions. [2022-02-20 14:24:33,987 INFO L276 IsEmpty]: Start isEmpty. Operand 87 states and 102 transitions. [2022-02-20 14:24:33,987 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 14:24:33,987 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 14:24:33,988 INFO L74 IsIncluded]: Start isIncluded. First operand has 67 states, 66 states have (on average 1.2424242424242424) internal successors, (82), 66 states have internal predecessors, (82), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 87 states. [2022-02-20 14:24:33,988 INFO L87 Difference]: Start difference. First operand has 67 states, 66 states have (on average 1.2424242424242424) internal successors, (82), 66 states have internal predecessors, (82), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 87 states. [2022-02-20 14:24:33,989 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 14:24:33,989 INFO L93 Difference]: Finished difference Result 87 states and 102 transitions. [2022-02-20 14:24:33,989 INFO L276 IsEmpty]: Start isEmpty. Operand 87 states and 102 transitions. [2022-02-20 14:24:33,989 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 14:24:33,989 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 14:24:33,989 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 14:24:33,989 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 14:24:33,989 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 67 states, 66 states have (on average 1.2424242424242424) internal successors, (82), 66 states have internal predecessors, (82), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:24:33,990 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 67 states to 67 states and 82 transitions. [2022-02-20 14:24:33,990 INFO L78 Accepts]: Start accepts. Automaton has 67 states and 82 transitions. Word has length 27 [2022-02-20 14:24:33,990 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 14:24:33,990 INFO L470 AbstractCegarLoop]: Abstraction has 67 states and 82 transitions. [2022-02-20 14:24:33,990 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 11 states, 11 states have (on average 3.090909090909091) internal successors, (34), 11 states have internal predecessors, (34), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:24:33,990 INFO L276 IsEmpty]: Start isEmpty. Operand 67 states and 82 transitions. [2022-02-20 14:24:33,991 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 31 [2022-02-20 14:24:33,995 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 14:24:33,995 INFO L514 BasicCegarLoop]: trace histogram [3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 14:24:34,011 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (9)] Ended with exit code 0 [2022-02-20 14:24:34,211 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 9 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable8 [2022-02-20 14:24:34,211 INFO L402 AbstractCegarLoop]: === Iteration 10 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 14:24:34,212 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 14:24:34,212 INFO L85 PathProgramCache]: Analyzing trace with hash -14420759, now seen corresponding path program 2 times [2022-02-20 14:24:34,212 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 14:24:34,212 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1672637353] [2022-02-20 14:24:34,212 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 14:24:34,212 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 14:24:34,225 ERROR L252 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-02-20 14:24:34,225 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1777372818] [2022-02-20 14:24:34,225 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-02-20 14:24:34,225 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 14:24:34,225 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 14:24:34,226 INFO L229 MonitoredProcess]: Starting monitored process 10 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-02-20 14:24:34,229 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (10)] Waiting until timeout for monitored process [2022-02-20 14:24:34,266 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-02-20 14:24:34,266 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-02-20 14:24:34,267 INFO L263 TraceCheckSpWp]: Trace formula consists of 111 conjuncts, 6 conjunts are in the unsatisfiable core [2022-02-20 14:24:34,273 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 14:24:34,273 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 14:24:34,408 INFO L290 TraceCheckUtils]: 0: Hoare triple {4838#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~ARR_SIZE~0 := 0; {4838#true} is VALID [2022-02-20 14:24:34,408 INFO L290 TraceCheckUtils]: 1: Hoare triple {4838#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~post6#1, main_#t~post5#1, main_#t~mem9#1, main_#t~post8#1, main_#t~post7#1, main_~#array~0#1.base, main_~#array~0#1.offset, main_~row~0#1, main_~column~0#1, main_~sum~0#1;assume -32768 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 32767;~ARR_SIZE~0 := main_#t~nondet4#1;havoc main_#t~nondet4#1;assume { :begin_inline_assume_abort_if_not } true;assume_abort_if_not_#in~cond#1 := (if ~ARR_SIZE~0 > 0 then 1 else 0);havoc assume_abort_if_not_~cond#1;assume_abort_if_not_~cond#1 := assume_abort_if_not_#in~cond#1; {4838#true} is VALID [2022-02-20 14:24:34,408 INFO L290 TraceCheckUtils]: 2: Hoare triple {4838#true} assume !(0 == assume_abort_if_not_~cond#1); {4838#true} is VALID [2022-02-20 14:24:34,408 INFO L290 TraceCheckUtils]: 3: Hoare triple {4838#true} assume { :end_inline_assume_abort_if_not } true;call main_~#array~0#1.base, main_~#array~0#1.offset := #Ultimate.allocOnStack(4 * (if ~ARR_SIZE~0 % 4294967296 <= 2147483647 then ~ARR_SIZE~0 % 4294967296 else ~ARR_SIZE~0 % 4294967296 - 4294967296) * (if ~ARR_SIZE~0 % 4294967296 <= 2147483647 then ~ARR_SIZE~0 % 4294967296 else ~ARR_SIZE~0 % 4294967296 - 4294967296));main_~row~0#1 := 0;main_~column~0#1 := 0;main_~sum~0#1 := 0;main_~row~0#1 := 0; {4838#true} is VALID [2022-02-20 14:24:34,409 INFO L290 TraceCheckUtils]: 4: Hoare triple {4838#true} assume !!(main_~row~0#1 < ~ARR_SIZE~0);main_~column~0#1 := 0; {4855#(<= 0 |ULTIMATE.start_main_~column~0#1|)} is VALID [2022-02-20 14:24:34,409 INFO L290 TraceCheckUtils]: 5: Hoare triple {4855#(<= 0 |ULTIMATE.start_main_~column~0#1|)} assume !!(main_~column~0#1 < ~ARR_SIZE~0); {4855#(<= 0 |ULTIMATE.start_main_~column~0#1|)} is VALID [2022-02-20 14:24:34,409 INFO L290 TraceCheckUtils]: 6: Hoare triple {4855#(<= 0 |ULTIMATE.start_main_~column~0#1|)} assume main_~row~0#1 == main_~column~0#1;call write~int(0, main_~#array~0#1.base, main_~#array~0#1.offset + main_~row~0#1 * (4 * (if ~ARR_SIZE~0 % 4294967296 <= 2147483647 then ~ARR_SIZE~0 % 4294967296 else ~ARR_SIZE~0 % 4294967296 - 4294967296)) + 4 * main_~row~0#1, 4); {4855#(<= 0 |ULTIMATE.start_main_~column~0#1|)} is VALID [2022-02-20 14:24:34,410 INFO L290 TraceCheckUtils]: 7: Hoare triple {4855#(<= 0 |ULTIMATE.start_main_~column~0#1|)} main_#t~post6#1 := main_~column~0#1;main_~column~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {4865#(<= 1 |ULTIMATE.start_main_~column~0#1|)} is VALID [2022-02-20 14:24:34,411 INFO L290 TraceCheckUtils]: 8: Hoare triple {4865#(<= 1 |ULTIMATE.start_main_~column~0#1|)} assume !!(main_~column~0#1 < ~ARR_SIZE~0); {4869#(< 1 ~ARR_SIZE~0)} is VALID [2022-02-20 14:24:34,411 INFO L290 TraceCheckUtils]: 9: Hoare triple {4869#(< 1 ~ARR_SIZE~0)} assume !(main_~row~0#1 == main_~column~0#1);call write~int(main_~row~0#1, main_~#array~0#1.base, main_~#array~0#1.offset + main_~row~0#1 * (4 * (if ~ARR_SIZE~0 % 4294967296 <= 2147483647 then ~ARR_SIZE~0 % 4294967296 else ~ARR_SIZE~0 % 4294967296 - 4294967296)) + 4 * main_~column~0#1, 4); {4869#(< 1 ~ARR_SIZE~0)} is VALID [2022-02-20 14:24:34,411 INFO L290 TraceCheckUtils]: 10: Hoare triple {4869#(< 1 ~ARR_SIZE~0)} main_#t~post6#1 := main_~column~0#1;main_~column~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {4869#(< 1 ~ARR_SIZE~0)} is VALID [2022-02-20 14:24:34,411 INFO L290 TraceCheckUtils]: 11: Hoare triple {4869#(< 1 ~ARR_SIZE~0)} assume !(main_~column~0#1 < ~ARR_SIZE~0); {4869#(< 1 ~ARR_SIZE~0)} is VALID [2022-02-20 14:24:34,412 INFO L290 TraceCheckUtils]: 12: Hoare triple {4869#(< 1 ~ARR_SIZE~0)} main_#t~post5#1 := main_~row~0#1;main_~row~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {4869#(< 1 ~ARR_SIZE~0)} is VALID [2022-02-20 14:24:34,412 INFO L290 TraceCheckUtils]: 13: Hoare triple {4869#(< 1 ~ARR_SIZE~0)} assume !!(main_~row~0#1 < ~ARR_SIZE~0);main_~column~0#1 := 0; {4885#(and (< 1 ~ARR_SIZE~0) (<= |ULTIMATE.start_main_~column~0#1| 0))} is VALID [2022-02-20 14:24:34,412 INFO L290 TraceCheckUtils]: 14: Hoare triple {4885#(and (< 1 ~ARR_SIZE~0) (<= |ULTIMATE.start_main_~column~0#1| 0))} assume !!(main_~column~0#1 < ~ARR_SIZE~0); {4885#(and (< 1 ~ARR_SIZE~0) (<= |ULTIMATE.start_main_~column~0#1| 0))} is VALID [2022-02-20 14:24:34,413 INFO L290 TraceCheckUtils]: 15: Hoare triple {4885#(and (< 1 ~ARR_SIZE~0) (<= |ULTIMATE.start_main_~column~0#1| 0))} assume !(main_~row~0#1 == main_~column~0#1);call write~int(main_~row~0#1, main_~#array~0#1.base, main_~#array~0#1.offset + main_~row~0#1 * (4 * (if ~ARR_SIZE~0 % 4294967296 <= 2147483647 then ~ARR_SIZE~0 % 4294967296 else ~ARR_SIZE~0 % 4294967296 - 4294967296)) + 4 * main_~column~0#1, 4); {4885#(and (< 1 ~ARR_SIZE~0) (<= |ULTIMATE.start_main_~column~0#1| 0))} is VALID [2022-02-20 14:24:34,413 INFO L290 TraceCheckUtils]: 16: Hoare triple {4885#(and (< 1 ~ARR_SIZE~0) (<= |ULTIMATE.start_main_~column~0#1| 0))} main_#t~post6#1 := main_~column~0#1;main_~column~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {4895#(and (< 1 ~ARR_SIZE~0) (<= |ULTIMATE.start_main_~column~0#1| 1))} is VALID [2022-02-20 14:24:34,414 INFO L290 TraceCheckUtils]: 17: Hoare triple {4895#(and (< 1 ~ARR_SIZE~0) (<= |ULTIMATE.start_main_~column~0#1| 1))} assume !(main_~column~0#1 < ~ARR_SIZE~0); {4839#false} is VALID [2022-02-20 14:24:34,414 INFO L290 TraceCheckUtils]: 18: Hoare triple {4839#false} main_#t~post5#1 := main_~row~0#1;main_~row~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {4839#false} is VALID [2022-02-20 14:24:34,414 INFO L290 TraceCheckUtils]: 19: Hoare triple {4839#false} assume !(main_~row~0#1 < ~ARR_SIZE~0); {4839#false} is VALID [2022-02-20 14:24:34,414 INFO L290 TraceCheckUtils]: 20: Hoare triple {4839#false} main_~row~0#1 := 0; {4839#false} is VALID [2022-02-20 14:24:34,414 INFO L290 TraceCheckUtils]: 21: Hoare triple {4839#false} assume !!(main_~row~0#1 < ~ARR_SIZE~0);main_~column~0#1 := 0; {4839#false} is VALID [2022-02-20 14:24:34,414 INFO L290 TraceCheckUtils]: 22: Hoare triple {4839#false} assume !!(main_~column~0#1 < ~ARR_SIZE~0);call main_#t~mem9#1 := read~int(main_~#array~0#1.base, main_~#array~0#1.offset + main_~row~0#1 * (4 * (if ~ARR_SIZE~0 % 4294967296 <= 2147483647 then ~ARR_SIZE~0 % 4294967296 else ~ARR_SIZE~0 % 4294967296 - 4294967296)) + 4 * main_~column~0#1, 4);main_~sum~0#1 := main_~sum~0#1 + main_#t~mem9#1;havoc main_#t~mem9#1; {4839#false} is VALID [2022-02-20 14:24:34,414 INFO L290 TraceCheckUtils]: 23: Hoare triple {4839#false} main_#t~post8#1 := main_~column~0#1;main_~column~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; {4839#false} is VALID [2022-02-20 14:24:34,414 INFO L290 TraceCheckUtils]: 24: Hoare triple {4839#false} assume !(main_~column~0#1 < ~ARR_SIZE~0); {4839#false} is VALID [2022-02-20 14:24:34,414 INFO L290 TraceCheckUtils]: 25: Hoare triple {4839#false} main_#t~post7#1 := main_~row~0#1;main_~row~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {4839#false} is VALID [2022-02-20 14:24:34,414 INFO L290 TraceCheckUtils]: 26: Hoare triple {4839#false} assume !(main_~row~0#1 < ~ARR_SIZE~0); {4839#false} is VALID [2022-02-20 14:24:34,415 INFO L290 TraceCheckUtils]: 27: Hoare triple {4839#false} assume { :begin_inline___VERIFIER_assert } true;__VERIFIER_assert_#in~cond#1 := (if 2 * main_~sum~0#1 == ~ARR_SIZE~0 * (~ARR_SIZE~0 - 1) * (~ARR_SIZE~0 - 1) then 1 else 0);havoc __VERIFIER_assert_~cond#1;__VERIFIER_assert_~cond#1 := __VERIFIER_assert_#in~cond#1; {4839#false} is VALID [2022-02-20 14:24:34,415 INFO L290 TraceCheckUtils]: 28: Hoare triple {4839#false} assume 0 == __VERIFIER_assert_~cond#1; {4839#false} is VALID [2022-02-20 14:24:34,415 INFO L290 TraceCheckUtils]: 29: Hoare triple {4839#false} assume !false; {4839#false} is VALID [2022-02-20 14:24:34,415 INFO L134 CoverageAnalysis]: Checked inductivity of 22 backedges. 9 proven. 11 refuted. 0 times theorem prover too weak. 2 trivial. 0 not checked. [2022-02-20 14:24:34,415 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 14:24:34,522 INFO L290 TraceCheckUtils]: 29: Hoare triple {4839#false} assume !false; {4839#false} is VALID [2022-02-20 14:24:34,523 INFO L290 TraceCheckUtils]: 28: Hoare triple {4839#false} assume 0 == __VERIFIER_assert_~cond#1; {4839#false} is VALID [2022-02-20 14:24:34,523 INFO L290 TraceCheckUtils]: 27: Hoare triple {4839#false} assume { :begin_inline___VERIFIER_assert } true;__VERIFIER_assert_#in~cond#1 := (if 2 * main_~sum~0#1 == ~ARR_SIZE~0 * (~ARR_SIZE~0 - 1) * (~ARR_SIZE~0 - 1) then 1 else 0);havoc __VERIFIER_assert_~cond#1;__VERIFIER_assert_~cond#1 := __VERIFIER_assert_#in~cond#1; {4839#false} is VALID [2022-02-20 14:24:34,523 INFO L290 TraceCheckUtils]: 26: Hoare triple {4839#false} assume !(main_~row~0#1 < ~ARR_SIZE~0); {4839#false} is VALID [2022-02-20 14:24:34,523 INFO L290 TraceCheckUtils]: 25: Hoare triple {4839#false} main_#t~post7#1 := main_~row~0#1;main_~row~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {4839#false} is VALID [2022-02-20 14:24:34,523 INFO L290 TraceCheckUtils]: 24: Hoare triple {4839#false} assume !(main_~column~0#1 < ~ARR_SIZE~0); {4839#false} is VALID [2022-02-20 14:24:34,523 INFO L290 TraceCheckUtils]: 23: Hoare triple {4839#false} main_#t~post8#1 := main_~column~0#1;main_~column~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; {4839#false} is VALID [2022-02-20 14:24:34,523 INFO L290 TraceCheckUtils]: 22: Hoare triple {4839#false} assume !!(main_~column~0#1 < ~ARR_SIZE~0);call main_#t~mem9#1 := read~int(main_~#array~0#1.base, main_~#array~0#1.offset + main_~row~0#1 * (4 * (if ~ARR_SIZE~0 % 4294967296 <= 2147483647 then ~ARR_SIZE~0 % 4294967296 else ~ARR_SIZE~0 % 4294967296 - 4294967296)) + 4 * main_~column~0#1, 4);main_~sum~0#1 := main_~sum~0#1 + main_#t~mem9#1;havoc main_#t~mem9#1; {4839#false} is VALID [2022-02-20 14:24:34,523 INFO L290 TraceCheckUtils]: 21: Hoare triple {4839#false} assume !!(main_~row~0#1 < ~ARR_SIZE~0);main_~column~0#1 := 0; {4839#false} is VALID [2022-02-20 14:24:34,523 INFO L290 TraceCheckUtils]: 20: Hoare triple {4839#false} main_~row~0#1 := 0; {4839#false} is VALID [2022-02-20 14:24:34,523 INFO L290 TraceCheckUtils]: 19: Hoare triple {4839#false} assume !(main_~row~0#1 < ~ARR_SIZE~0); {4839#false} is VALID [2022-02-20 14:24:34,523 INFO L290 TraceCheckUtils]: 18: Hoare triple {4839#false} main_#t~post5#1 := main_~row~0#1;main_~row~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {4839#false} is VALID [2022-02-20 14:24:34,524 INFO L290 TraceCheckUtils]: 17: Hoare triple {4971#(< |ULTIMATE.start_main_~column~0#1| ~ARR_SIZE~0)} assume !(main_~column~0#1 < ~ARR_SIZE~0); {4839#false} is VALID [2022-02-20 14:24:34,525 INFO L290 TraceCheckUtils]: 16: Hoare triple {4975#(< (+ |ULTIMATE.start_main_~column~0#1| 1) ~ARR_SIZE~0)} main_#t~post6#1 := main_~column~0#1;main_~column~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {4971#(< |ULTIMATE.start_main_~column~0#1| ~ARR_SIZE~0)} is VALID [2022-02-20 14:24:34,525 INFO L290 TraceCheckUtils]: 15: Hoare triple {4975#(< (+ |ULTIMATE.start_main_~column~0#1| 1) ~ARR_SIZE~0)} assume !(main_~row~0#1 == main_~column~0#1);call write~int(main_~row~0#1, main_~#array~0#1.base, main_~#array~0#1.offset + main_~row~0#1 * (4 * (if ~ARR_SIZE~0 % 4294967296 <= 2147483647 then ~ARR_SIZE~0 % 4294967296 else ~ARR_SIZE~0 % 4294967296 - 4294967296)) + 4 * main_~column~0#1, 4); {4975#(< (+ |ULTIMATE.start_main_~column~0#1| 1) ~ARR_SIZE~0)} is VALID [2022-02-20 14:24:34,525 INFO L290 TraceCheckUtils]: 14: Hoare triple {4975#(< (+ |ULTIMATE.start_main_~column~0#1| 1) ~ARR_SIZE~0)} assume !!(main_~column~0#1 < ~ARR_SIZE~0); {4975#(< (+ |ULTIMATE.start_main_~column~0#1| 1) ~ARR_SIZE~0)} is VALID [2022-02-20 14:24:34,525 INFO L290 TraceCheckUtils]: 13: Hoare triple {4869#(< 1 ~ARR_SIZE~0)} assume !!(main_~row~0#1 < ~ARR_SIZE~0);main_~column~0#1 := 0; {4975#(< (+ |ULTIMATE.start_main_~column~0#1| 1) ~ARR_SIZE~0)} is VALID [2022-02-20 14:24:34,526 INFO L290 TraceCheckUtils]: 12: Hoare triple {4869#(< 1 ~ARR_SIZE~0)} main_#t~post5#1 := main_~row~0#1;main_~row~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {4869#(< 1 ~ARR_SIZE~0)} is VALID [2022-02-20 14:24:34,527 INFO L290 TraceCheckUtils]: 11: Hoare triple {4869#(< 1 ~ARR_SIZE~0)} assume !(main_~column~0#1 < ~ARR_SIZE~0); {4869#(< 1 ~ARR_SIZE~0)} is VALID [2022-02-20 14:24:34,529 INFO L290 TraceCheckUtils]: 10: Hoare triple {4869#(< 1 ~ARR_SIZE~0)} main_#t~post6#1 := main_~column~0#1;main_~column~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {4869#(< 1 ~ARR_SIZE~0)} is VALID [2022-02-20 14:24:34,530 INFO L290 TraceCheckUtils]: 9: Hoare triple {4869#(< 1 ~ARR_SIZE~0)} assume !(main_~row~0#1 == main_~column~0#1);call write~int(main_~row~0#1, main_~#array~0#1.base, main_~#array~0#1.offset + main_~row~0#1 * (4 * (if ~ARR_SIZE~0 % 4294967296 <= 2147483647 then ~ARR_SIZE~0 % 4294967296 else ~ARR_SIZE~0 % 4294967296 - 4294967296)) + 4 * main_~column~0#1, 4); {4869#(< 1 ~ARR_SIZE~0)} is VALID [2022-02-20 14:24:34,531 INFO L290 TraceCheckUtils]: 8: Hoare triple {4865#(<= 1 |ULTIMATE.start_main_~column~0#1|)} assume !!(main_~column~0#1 < ~ARR_SIZE~0); {4869#(< 1 ~ARR_SIZE~0)} is VALID [2022-02-20 14:24:34,532 INFO L290 TraceCheckUtils]: 7: Hoare triple {4855#(<= 0 |ULTIMATE.start_main_~column~0#1|)} main_#t~post6#1 := main_~column~0#1;main_~column~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {4865#(<= 1 |ULTIMATE.start_main_~column~0#1|)} is VALID [2022-02-20 14:24:34,534 INFO L290 TraceCheckUtils]: 6: Hoare triple {4855#(<= 0 |ULTIMATE.start_main_~column~0#1|)} assume main_~row~0#1 == main_~column~0#1;call write~int(0, main_~#array~0#1.base, main_~#array~0#1.offset + main_~row~0#1 * (4 * (if ~ARR_SIZE~0 % 4294967296 <= 2147483647 then ~ARR_SIZE~0 % 4294967296 else ~ARR_SIZE~0 % 4294967296 - 4294967296)) + 4 * main_~row~0#1, 4); {4855#(<= 0 |ULTIMATE.start_main_~column~0#1|)} is VALID [2022-02-20 14:24:34,535 INFO L290 TraceCheckUtils]: 5: Hoare triple {4855#(<= 0 |ULTIMATE.start_main_~column~0#1|)} assume !!(main_~column~0#1 < ~ARR_SIZE~0); {4855#(<= 0 |ULTIMATE.start_main_~column~0#1|)} is VALID [2022-02-20 14:24:34,535 INFO L290 TraceCheckUtils]: 4: Hoare triple {4838#true} assume !!(main_~row~0#1 < ~ARR_SIZE~0);main_~column~0#1 := 0; {4855#(<= 0 |ULTIMATE.start_main_~column~0#1|)} is VALID [2022-02-20 14:24:34,535 INFO L290 TraceCheckUtils]: 3: Hoare triple {4838#true} assume { :end_inline_assume_abort_if_not } true;call main_~#array~0#1.base, main_~#array~0#1.offset := #Ultimate.allocOnStack(4 * (if ~ARR_SIZE~0 % 4294967296 <= 2147483647 then ~ARR_SIZE~0 % 4294967296 else ~ARR_SIZE~0 % 4294967296 - 4294967296) * (if ~ARR_SIZE~0 % 4294967296 <= 2147483647 then ~ARR_SIZE~0 % 4294967296 else ~ARR_SIZE~0 % 4294967296 - 4294967296));main_~row~0#1 := 0;main_~column~0#1 := 0;main_~sum~0#1 := 0;main_~row~0#1 := 0; {4838#true} is VALID [2022-02-20 14:24:34,536 INFO L290 TraceCheckUtils]: 2: Hoare triple {4838#true} assume !(0 == assume_abort_if_not_~cond#1); {4838#true} is VALID [2022-02-20 14:24:34,536 INFO L290 TraceCheckUtils]: 1: Hoare triple {4838#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~post6#1, main_#t~post5#1, main_#t~mem9#1, main_#t~post8#1, main_#t~post7#1, main_~#array~0#1.base, main_~#array~0#1.offset, main_~row~0#1, main_~column~0#1, main_~sum~0#1;assume -32768 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 32767;~ARR_SIZE~0 := main_#t~nondet4#1;havoc main_#t~nondet4#1;assume { :begin_inline_assume_abort_if_not } true;assume_abort_if_not_#in~cond#1 := (if ~ARR_SIZE~0 > 0 then 1 else 0);havoc assume_abort_if_not_~cond#1;assume_abort_if_not_~cond#1 := assume_abort_if_not_#in~cond#1; {4838#true} is VALID [2022-02-20 14:24:34,536 INFO L290 TraceCheckUtils]: 0: Hoare triple {4838#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~ARR_SIZE~0 := 0; {4838#true} is VALID [2022-02-20 14:24:34,536 INFO L134 CoverageAnalysis]: Checked inductivity of 22 backedges. 5 proven. 15 refuted. 0 times theorem prover too weak. 2 trivial. 0 not checked. [2022-02-20 14:24:34,536 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 14:24:34,536 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1672637353] [2022-02-20 14:24:34,536 WARN L317 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-02-20 14:24:34,537 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1777372818] [2022-02-20 14:24:34,537 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1777372818] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 14:24:34,537 INFO L191 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-02-20 14:24:34,537 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 7] total 9 [2022-02-20 14:24:34,537 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1121089363] [2022-02-20 14:24:34,537 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-02-20 14:24:34,538 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 3.888888888888889) internal successors, (35), 9 states have internal predecessors, (35), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 30 [2022-02-20 14:24:34,538 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 14:24:34,538 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 9 states, 9 states have (on average 3.888888888888889) internal successors, (35), 9 states have internal predecessors, (35), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:24:34,561 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 35 edges. 35 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 14:24:34,561 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-02-20 14:24:34,561 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 14:24:34,562 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-02-20 14:24:34,562 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=23, Invalid=49, Unknown=0, NotChecked=0, Total=72 [2022-02-20 14:24:34,562 INFO L87 Difference]: Start difference. First operand 67 states and 82 transitions. Second operand has 9 states, 9 states have (on average 3.888888888888889) internal successors, (35), 9 states have internal predecessors, (35), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:24:34,875 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 14:24:34,875 INFO L93 Difference]: Finished difference Result 80 states and 95 transitions. [2022-02-20 14:24:34,875 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-02-20 14:24:34,875 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 3.888888888888889) internal successors, (35), 9 states have internal predecessors, (35), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Word has length 30 [2022-02-20 14:24:34,875 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 14:24:34,875 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 3.888888888888889) internal successors, (35), 9 states have internal predecessors, (35), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:24:34,876 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 54 transitions. [2022-02-20 14:24:34,876 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 3.888888888888889) internal successors, (35), 9 states have internal predecessors, (35), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:24:34,876 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 54 transitions. [2022-02-20 14:24:34,876 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 9 states and 54 transitions. [2022-02-20 14:24:34,915 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 54 edges. 54 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 14:24:34,916 INFO L225 Difference]: With dead ends: 80 [2022-02-20 14:24:34,916 INFO L226 Difference]: Without dead ends: 67 [2022-02-20 14:24:34,917 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 63 GetRequests, 51 SyntacticMatches, 0 SemanticMatches, 12 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 19 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=59, Invalid=123, Unknown=0, NotChecked=0, Total=182 [2022-02-20 14:24:34,917 INFO L933 BasicCegarLoop]: 10 mSDtfsCounter, 51 mSDsluCounter, 15 mSDsCounter, 0 mSdLazyCounter, 105 mSolverCounterSat, 19 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 51 SdHoareTripleChecker+Valid, 25 SdHoareTripleChecker+Invalid, 124 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 19 IncrementalHoareTripleChecker+Valid, 105 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 14:24:34,917 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [51 Valid, 25 Invalid, 124 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [19 Valid, 105 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 14:24:34,917 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 67 states. [2022-02-20 14:24:34,989 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 67 to 47. [2022-02-20 14:24:34,989 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 14:24:34,989 INFO L82 GeneralOperation]: Start isEquivalent. First operand 67 states. Second operand has 47 states, 46 states have (on average 1.2173913043478262) internal successors, (56), 46 states have internal predecessors, (56), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:24:34,989 INFO L74 IsIncluded]: Start isIncluded. First operand 67 states. Second operand has 47 states, 46 states have (on average 1.2173913043478262) internal successors, (56), 46 states have internal predecessors, (56), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:24:34,989 INFO L87 Difference]: Start difference. First operand 67 states. Second operand has 47 states, 46 states have (on average 1.2173913043478262) internal successors, (56), 46 states have internal predecessors, (56), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:24:34,990 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 14:24:34,990 INFO L93 Difference]: Finished difference Result 67 states and 79 transitions. [2022-02-20 14:24:34,990 INFO L276 IsEmpty]: Start isEmpty. Operand 67 states and 79 transitions. [2022-02-20 14:24:34,990 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 14:24:34,990 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 14:24:34,990 INFO L74 IsIncluded]: Start isIncluded. First operand has 47 states, 46 states have (on average 1.2173913043478262) internal successors, (56), 46 states have internal predecessors, (56), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 67 states. [2022-02-20 14:24:34,991 INFO L87 Difference]: Start difference. First operand has 47 states, 46 states have (on average 1.2173913043478262) internal successors, (56), 46 states have internal predecessors, (56), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) Second operand 67 states. [2022-02-20 14:24:34,991 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 14:24:34,992 INFO L93 Difference]: Finished difference Result 67 states and 79 transitions. [2022-02-20 14:24:34,992 INFO L276 IsEmpty]: Start isEmpty. Operand 67 states and 79 transitions. [2022-02-20 14:24:34,993 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 14:24:34,993 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 14:24:34,993 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 14:24:34,993 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 14:24:34,993 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 47 states, 46 states have (on average 1.2173913043478262) internal successors, (56), 46 states have internal predecessors, (56), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:24:34,993 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 47 states to 47 states and 56 transitions. [2022-02-20 14:24:34,993 INFO L78 Accepts]: Start accepts. Automaton has 47 states and 56 transitions. Word has length 30 [2022-02-20 14:24:34,993 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 14:24:34,994 INFO L470 AbstractCegarLoop]: Abstraction has 47 states and 56 transitions. [2022-02-20 14:24:34,994 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 9 states have (on average 3.888888888888889) internal successors, (35), 9 states have internal predecessors, (35), 0 states have call successors, (0), 0 states have call predecessors, (0), 0 states have return successors, (0), 0 states have call predecessors, (0), 0 states have call successors, (0) [2022-02-20 14:24:34,994 INFO L276 IsEmpty]: Start isEmpty. Operand 47 states and 56 transitions. [2022-02-20 14:24:34,994 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 43 [2022-02-20 14:24:34,994 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 14:24:34,994 INFO L514 BasicCegarLoop]: trace histogram [4, 4, 4, 4, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 14:24:35,010 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (10)] Forceful destruction successful, exit code 0 [2022-02-20 14:24:35,194 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 10 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable9 [2022-02-20 14:24:35,195 INFO L402 AbstractCegarLoop]: === Iteration 11 === Targeting ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION === [ULTIMATE.startErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 14:24:35,195 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 14:24:35,195 INFO L85 PathProgramCache]: Analyzing trace with hash 1156561688, now seen corresponding path program 3 times [2022-02-20 14:24:35,195 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 14:24:35,195 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2003909933] [2022-02-20 14:24:35,195 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 14:24:35,195 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 14:24:35,232 ERROR L252 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-02-20 14:24:35,234 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1663254113] [2022-02-20 14:24:35,234 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST2 [2022-02-20 14:24:35,234 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 14:24:35,234 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 14:24:35,235 INFO L229 MonitoredProcess]: Starting monitored process 11 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-02-20 14:24:35,251 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (11)] Waiting until timeout for monitored process [2022-02-20 14:24:35,368 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST2 issued 7 check-sat command(s) [2022-02-20 14:24:35,369 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-02-20 14:24:35,370 INFO L263 TraceCheckSpWp]: Trace formula consists of 141 conjuncts, 62 conjunts are in the unsatisfiable core [2022-02-20 14:24:35,392 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 14:24:35,393 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 14:24:35,493 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 61 treesize of output 56 [2022-02-20 14:24:35,497 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 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 19 treesize of output 18 [2022-02-20 14:24:35,505 WARN L234 Elim1Store]: Array PQE input equivalent to false [2022-02-20 14:24:35,648 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 48 treesize of output 41 [2022-02-20 14:24:35,659 INFO L356 Elim1Store]: treesize reduction 19, result has 20.8 percent of original size [2022-02-20 14:24:35,659 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 2 new quantified variables, introduced 1 case distinctions, treesize of input 40 treesize of output 40 [2022-02-20 14:24:35,830 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 77 treesize of output 68 [2022-02-20 14:24:35,882 INFO L356 Elim1Store]: treesize reduction 186, result has 6.5 percent of original size [2022-02-20 14:24:35,883 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 2 stores, 2 select indices, 2 select index equivalence classes, 0 disjoint index pairs (out of 1 index pairs), introduced 4 new quantified variables, introduced 5 case distinctions, treesize of input 67 treesize of output 138 [2022-02-20 14:24:36,318 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 155 treesize of output 142 [2022-02-20 14:24:36,397 INFO L356 Elim1Store]: treesize reduction 357, result has 6.8 percent of original size [2022-02-20 14:24:36,398 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 2 stores, 3 select indices, 3 select index equivalence classes, 0 disjoint index pairs (out of 3 index pairs), introduced 5 new quantified variables, introduced 9 case distinctions, treesize of input 235 treesize of output 309 [2022-02-20 14:24:37,854 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 152 treesize of output 136 [2022-02-20 14:24:37,965 INFO L356 Elim1Store]: treesize reduction 332, result has 30.1 percent of original size [2022-02-20 14:24:37,966 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 stores, 7 select indices, 7 select index equivalence classes, 0 disjoint index pairs (out of 21 index pairs), introduced 7 new quantified variables, introduced 21 case distinctions, treesize of input 294 treesize of output 353 [2022-02-20 14:24:38,861 INFO L290 TraceCheckUtils]: 0: Hoare triple {5345#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0, 0;assume 0 == #valid[0];assume 0 < #StackHeapBarrier;call #Ultimate.allocInit(2, 1);call write~init~int(48, 1, 0, 1);call write~init~int(0, 1, 1, 1);call #Ultimate.allocInit(18, 2);call #Ultimate.allocInit(12, 3);~ARR_SIZE~0 := 0; {5345#true} is VALID [2022-02-20 14:24:38,861 INFO L290 TraceCheckUtils]: 1: Hoare triple {5345#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~post6#1, main_#t~post5#1, main_#t~mem9#1, main_#t~post8#1, main_#t~post7#1, main_~#array~0#1.base, main_~#array~0#1.offset, main_~row~0#1, main_~column~0#1, main_~sum~0#1;assume -32768 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 32767;~ARR_SIZE~0 := main_#t~nondet4#1;havoc main_#t~nondet4#1;assume { :begin_inline_assume_abort_if_not } true;assume_abort_if_not_#in~cond#1 := (if ~ARR_SIZE~0 > 0 then 1 else 0);havoc assume_abort_if_not_~cond#1;assume_abort_if_not_~cond#1 := assume_abort_if_not_#in~cond#1; {5353#(<= ~ARR_SIZE~0 32767)} is VALID [2022-02-20 14:24:38,861 INFO L290 TraceCheckUtils]: 2: Hoare triple {5353#(<= ~ARR_SIZE~0 32767)} assume !(0 == assume_abort_if_not_~cond#1); {5353#(<= ~ARR_SIZE~0 32767)} is VALID [2022-02-20 14:24:38,862 INFO L290 TraceCheckUtils]: 3: Hoare triple {5353#(<= ~ARR_SIZE~0 32767)} assume { :end_inline_assume_abort_if_not } true;call main_~#array~0#1.base, main_~#array~0#1.offset := #Ultimate.allocOnStack(4 * (if ~ARR_SIZE~0 % 4294967296 <= 2147483647 then ~ARR_SIZE~0 % 4294967296 else ~ARR_SIZE~0 % 4294967296 - 4294967296) * (if ~ARR_SIZE~0 % 4294967296 <= 2147483647 then ~ARR_SIZE~0 % 4294967296 else ~ARR_SIZE~0 % 4294967296 - 4294967296));main_~row~0#1 := 0;main_~column~0#1 := 0;main_~sum~0#1 := 0;main_~row~0#1 := 0; {5360#(and (= |ULTIMATE.start_main_~sum~0#1| 0) (= |ULTIMATE.start_main_~row~0#1| 0) (<= ~ARR_SIZE~0 32767))} is VALID [2022-02-20 14:24:38,862 INFO L290 TraceCheckUtils]: 4: Hoare triple {5360#(and (= |ULTIMATE.start_main_~sum~0#1| 0) (= |ULTIMATE.start_main_~row~0#1| 0) (<= ~ARR_SIZE~0 32767))} assume !!(main_~row~0#1 < ~ARR_SIZE~0);main_~column~0#1 := 0; {5364#(and (= |ULTIMATE.start_main_~sum~0#1| 0) (< |ULTIMATE.start_main_~row~0#1| ~ARR_SIZE~0) (= |ULTIMATE.start_main_~row~0#1| 0) (= |ULTIMATE.start_main_~column~0#1| 0) (<= ~ARR_SIZE~0 32767))} is VALID [2022-02-20 14:24:38,863 INFO L290 TraceCheckUtils]: 5: Hoare triple {5364#(and (= |ULTIMATE.start_main_~sum~0#1| 0) (< |ULTIMATE.start_main_~row~0#1| ~ARR_SIZE~0) (= |ULTIMATE.start_main_~row~0#1| 0) (= |ULTIMATE.start_main_~column~0#1| 0) (<= ~ARR_SIZE~0 32767))} assume !!(main_~column~0#1 < ~ARR_SIZE~0); {5364#(and (= |ULTIMATE.start_main_~sum~0#1| 0) (< |ULTIMATE.start_main_~row~0#1| ~ARR_SIZE~0) (= |ULTIMATE.start_main_~row~0#1| 0) (= |ULTIMATE.start_main_~column~0#1| 0) (<= ~ARR_SIZE~0 32767))} is VALID [2022-02-20 14:24:38,863 INFO L290 TraceCheckUtils]: 6: Hoare triple {5364#(and (= |ULTIMATE.start_main_~sum~0#1| 0) (< |ULTIMATE.start_main_~row~0#1| ~ARR_SIZE~0) (= |ULTIMATE.start_main_~row~0#1| 0) (= |ULTIMATE.start_main_~column~0#1| 0) (<= ~ARR_SIZE~0 32767))} assume main_~row~0#1 == main_~column~0#1;call write~int(0, main_~#array~0#1.base, main_~#array~0#1.offset + main_~row~0#1 * (4 * (if ~ARR_SIZE~0 % 4294967296 <= 2147483647 then ~ARR_SIZE~0 % 4294967296 else ~ARR_SIZE~0 % 4294967296 - 4294967296)) + 4 * main_~row~0#1, 4); {5371#(and (= |ULTIMATE.start_main_~sum~0#1| 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~row~0#1|) |ULTIMATE.start_main_~#array~0#1.offset| (* |ULTIMATE.start_main_~row~0#1| 4))) 0) (< |ULTIMATE.start_main_~row~0#1| ~ARR_SIZE~0) (= |ULTIMATE.start_main_~row~0#1| 0) (= |ULTIMATE.start_main_~column~0#1| 0) (<= ~ARR_SIZE~0 32767))} is VALID [2022-02-20 14:24:38,864 INFO L290 TraceCheckUtils]: 7: Hoare triple {5371#(and (= |ULTIMATE.start_main_~sum~0#1| 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~row~0#1|) |ULTIMATE.start_main_~#array~0#1.offset| (* |ULTIMATE.start_main_~row~0#1| 4))) 0) (< |ULTIMATE.start_main_~row~0#1| ~ARR_SIZE~0) (= |ULTIMATE.start_main_~row~0#1| 0) (= |ULTIMATE.start_main_~column~0#1| 0) (<= ~ARR_SIZE~0 32767))} main_#t~post6#1 := main_~column~0#1;main_~column~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {5375#(and (= |ULTIMATE.start_main_~sum~0#1| 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~row~0#1|) |ULTIMATE.start_main_~#array~0#1.offset| (* |ULTIMATE.start_main_~row~0#1| 4))) 0) (< |ULTIMATE.start_main_~row~0#1| ~ARR_SIZE~0) (= |ULTIMATE.start_main_~column~0#1| 1) (= |ULTIMATE.start_main_~row~0#1| 0) (<= ~ARR_SIZE~0 32767))} is VALID [2022-02-20 14:24:38,864 INFO L290 TraceCheckUtils]: 8: Hoare triple {5375#(and (= |ULTIMATE.start_main_~sum~0#1| 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~row~0#1|) |ULTIMATE.start_main_~#array~0#1.offset| (* |ULTIMATE.start_main_~row~0#1| 4))) 0) (< |ULTIMATE.start_main_~row~0#1| ~ARR_SIZE~0) (= |ULTIMATE.start_main_~column~0#1| 1) (= |ULTIMATE.start_main_~row~0#1| 0) (<= ~ARR_SIZE~0 32767))} assume !!(main_~column~0#1 < ~ARR_SIZE~0); {5375#(and (= |ULTIMATE.start_main_~sum~0#1| 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~row~0#1|) |ULTIMATE.start_main_~#array~0#1.offset| (* |ULTIMATE.start_main_~row~0#1| 4))) 0) (< |ULTIMATE.start_main_~row~0#1| ~ARR_SIZE~0) (= |ULTIMATE.start_main_~column~0#1| 1) (= |ULTIMATE.start_main_~row~0#1| 0) (<= ~ARR_SIZE~0 32767))} is VALID [2022-02-20 14:24:38,865 INFO L290 TraceCheckUtils]: 9: Hoare triple {5375#(and (= |ULTIMATE.start_main_~sum~0#1| 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~row~0#1|) |ULTIMATE.start_main_~#array~0#1.offset| (* |ULTIMATE.start_main_~row~0#1| 4))) 0) (< |ULTIMATE.start_main_~row~0#1| ~ARR_SIZE~0) (= |ULTIMATE.start_main_~column~0#1| 1) (= |ULTIMATE.start_main_~row~0#1| 0) (<= ~ARR_SIZE~0 32767))} assume !(main_~row~0#1 == main_~column~0#1);call write~int(main_~row~0#1, main_~#array~0#1.base, main_~#array~0#1.offset + main_~row~0#1 * (4 * (if ~ARR_SIZE~0 % 4294967296 <= 2147483647 then ~ARR_SIZE~0 % 4294967296 else ~ARR_SIZE~0 % 4294967296 - 4294967296)) + 4 * main_~column~0#1, 4); {5382#(and (< 0 ~ARR_SIZE~0) (= |ULTIMATE.start_main_~sum~0#1| 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ |ULTIMATE.start_main_~#array~0#1.offset| 4)) 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) |ULTIMATE.start_main_~#array~0#1.offset|) 0) (<= ~ARR_SIZE~0 32767))} is VALID [2022-02-20 14:24:38,865 INFO L290 TraceCheckUtils]: 10: Hoare triple {5382#(and (< 0 ~ARR_SIZE~0) (= |ULTIMATE.start_main_~sum~0#1| 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ |ULTIMATE.start_main_~#array~0#1.offset| 4)) 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) |ULTIMATE.start_main_~#array~0#1.offset|) 0) (<= ~ARR_SIZE~0 32767))} main_#t~post6#1 := main_~column~0#1;main_~column~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {5382#(and (< 0 ~ARR_SIZE~0) (= |ULTIMATE.start_main_~sum~0#1| 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ |ULTIMATE.start_main_~#array~0#1.offset| 4)) 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) |ULTIMATE.start_main_~#array~0#1.offset|) 0) (<= ~ARR_SIZE~0 32767))} is VALID [2022-02-20 14:24:38,866 INFO L290 TraceCheckUtils]: 11: Hoare triple {5382#(and (< 0 ~ARR_SIZE~0) (= |ULTIMATE.start_main_~sum~0#1| 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ |ULTIMATE.start_main_~#array~0#1.offset| 4)) 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) |ULTIMATE.start_main_~#array~0#1.offset|) 0) (<= ~ARR_SIZE~0 32767))} assume !(main_~column~0#1 < ~ARR_SIZE~0); {5382#(and (< 0 ~ARR_SIZE~0) (= |ULTIMATE.start_main_~sum~0#1| 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ |ULTIMATE.start_main_~#array~0#1.offset| 4)) 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) |ULTIMATE.start_main_~#array~0#1.offset|) 0) (<= ~ARR_SIZE~0 32767))} is VALID [2022-02-20 14:24:38,866 INFO L290 TraceCheckUtils]: 12: Hoare triple {5382#(and (< 0 ~ARR_SIZE~0) (= |ULTIMATE.start_main_~sum~0#1| 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ |ULTIMATE.start_main_~#array~0#1.offset| 4)) 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) |ULTIMATE.start_main_~#array~0#1.offset|) 0) (<= ~ARR_SIZE~0 32767))} main_#t~post5#1 := main_~row~0#1;main_~row~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {5382#(and (< 0 ~ARR_SIZE~0) (= |ULTIMATE.start_main_~sum~0#1| 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ |ULTIMATE.start_main_~#array~0#1.offset| 4)) 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) |ULTIMATE.start_main_~#array~0#1.offset|) 0) (<= ~ARR_SIZE~0 32767))} is VALID [2022-02-20 14:24:38,866 INFO L290 TraceCheckUtils]: 13: Hoare triple {5382#(and (< 0 ~ARR_SIZE~0) (= |ULTIMATE.start_main_~sum~0#1| 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ |ULTIMATE.start_main_~#array~0#1.offset| 4)) 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) |ULTIMATE.start_main_~#array~0#1.offset|) 0) (<= ~ARR_SIZE~0 32767))} assume !!(main_~row~0#1 < ~ARR_SIZE~0);main_~column~0#1 := 0; {5395#(and (< 0 ~ARR_SIZE~0) (= |ULTIMATE.start_main_~sum~0#1| 0) (= |ULTIMATE.start_main_~column~0#1| 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ |ULTIMATE.start_main_~#array~0#1.offset| 4)) 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) |ULTIMATE.start_main_~#array~0#1.offset|) 0) (<= ~ARR_SIZE~0 32767))} is VALID [2022-02-20 14:24:38,867 INFO L290 TraceCheckUtils]: 14: Hoare triple {5395#(and (< 0 ~ARR_SIZE~0) (= |ULTIMATE.start_main_~sum~0#1| 0) (= |ULTIMATE.start_main_~column~0#1| 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ |ULTIMATE.start_main_~#array~0#1.offset| 4)) 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) |ULTIMATE.start_main_~#array~0#1.offset|) 0) (<= ~ARR_SIZE~0 32767))} assume !!(main_~column~0#1 < ~ARR_SIZE~0); {5395#(and (< 0 ~ARR_SIZE~0) (= |ULTIMATE.start_main_~sum~0#1| 0) (= |ULTIMATE.start_main_~column~0#1| 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ |ULTIMATE.start_main_~#array~0#1.offset| 4)) 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) |ULTIMATE.start_main_~#array~0#1.offset|) 0) (<= ~ARR_SIZE~0 32767))} is VALID [2022-02-20 14:24:38,874 INFO L290 TraceCheckUtils]: 15: Hoare triple {5395#(and (< 0 ~ARR_SIZE~0) (= |ULTIMATE.start_main_~sum~0#1| 0) (= |ULTIMATE.start_main_~column~0#1| 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ |ULTIMATE.start_main_~#array~0#1.offset| 4)) 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) |ULTIMATE.start_main_~#array~0#1.offset|) 0) (<= ~ARR_SIZE~0 32767))} assume !(main_~row~0#1 == main_~column~0#1);call write~int(main_~row~0#1, main_~#array~0#1.base, main_~#array~0#1.offset + main_~row~0#1 * (4 * (if ~ARR_SIZE~0 % 4294967296 <= 2147483647 then ~ARR_SIZE~0 % 4294967296 else ~ARR_SIZE~0 % 4294967296 - 4294967296)) + 4 * main_~column~0#1, 4); {5402#(and (< 0 ~ARR_SIZE~0) (= |ULTIMATE.start_main_~sum~0#1| 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~row~0#1|) (* |ULTIMATE.start_main_~column~0#1| 4) |ULTIMATE.start_main_~#array~0#1.offset|)) |ULTIMATE.start_main_~row~0#1|) (exists ((v_DerPreprocessor_7 Int)) (and (= (select (store (store (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~row~0#1|) (* |ULTIMATE.start_main_~column~0#1| 4) |ULTIMATE.start_main_~#array~0#1.offset|) v_DerPreprocessor_7) (+ (* |ULTIMATE.start_main_~column~0#1| 4) |ULTIMATE.start_main_~#array~0#1.offset| (* |ULTIMATE.start_main_~row~0#1| (+ (- 17179869184) (* (mod ~ARR_SIZE~0 4294967296) 4)))) |ULTIMATE.start_main_~row~0#1|) (+ (* (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~row~0#1|) (* |ULTIMATE.start_main_~column~0#1| 4) |ULTIMATE.start_main_~#array~0#1.offset|)) v_DerPreprocessor_7) (= (select (store (store (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~row~0#1|) (* |ULTIMATE.start_main_~column~0#1| 4) |ULTIMATE.start_main_~#array~0#1.offset|) v_DerPreprocessor_7) (+ (* |ULTIMATE.start_main_~column~0#1| 4) |ULTIMATE.start_main_~#array~0#1.offset| (* |ULTIMATE.start_main_~row~0#1| (+ (- 17179869184) (* (mod ~ARR_SIZE~0 4294967296) 4)))) |ULTIMATE.start_main_~row~0#1|) (+ |ULTIMATE.start_main_~#array~0#1.offset| 4)) 0))) (= |ULTIMATE.start_main_~column~0#1| 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) |ULTIMATE.start_main_~#array~0#1.offset|) 0) (<= ~ARR_SIZE~0 32767))} is VALID [2022-02-20 14:24:38,876 INFO L290 TraceCheckUtils]: 16: Hoare triple {5402#(and (< 0 ~ARR_SIZE~0) (= |ULTIMATE.start_main_~sum~0#1| 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~row~0#1|) (* |ULTIMATE.start_main_~column~0#1| 4) |ULTIMATE.start_main_~#array~0#1.offset|)) |ULTIMATE.start_main_~row~0#1|) (exists ((v_DerPreprocessor_7 Int)) (and (= (select (store (store (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~row~0#1|) (* |ULTIMATE.start_main_~column~0#1| 4) |ULTIMATE.start_main_~#array~0#1.offset|) v_DerPreprocessor_7) (+ (* |ULTIMATE.start_main_~column~0#1| 4) |ULTIMATE.start_main_~#array~0#1.offset| (* |ULTIMATE.start_main_~row~0#1| (+ (- 17179869184) (* (mod ~ARR_SIZE~0 4294967296) 4)))) |ULTIMATE.start_main_~row~0#1|) (+ (* (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~row~0#1|) (* |ULTIMATE.start_main_~column~0#1| 4) |ULTIMATE.start_main_~#array~0#1.offset|)) v_DerPreprocessor_7) (= (select (store (store (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~row~0#1|) (* |ULTIMATE.start_main_~column~0#1| 4) |ULTIMATE.start_main_~#array~0#1.offset|) v_DerPreprocessor_7) (+ (* |ULTIMATE.start_main_~column~0#1| 4) |ULTIMATE.start_main_~#array~0#1.offset| (* |ULTIMATE.start_main_~row~0#1| (+ (- 17179869184) (* (mod ~ARR_SIZE~0 4294967296) 4)))) |ULTIMATE.start_main_~row~0#1|) (+ |ULTIMATE.start_main_~#array~0#1.offset| 4)) 0))) (= |ULTIMATE.start_main_~column~0#1| 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) |ULTIMATE.start_main_~#array~0#1.offset|) 0) (<= ~ARR_SIZE~0 32767))} main_#t~post6#1 := main_~column~0#1;main_~column~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {5406#(and (exists ((v_DerPreprocessor_7 Int)) (and (= (select (store (store (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~row~0#1|) (* |ULTIMATE.start_main_~column~0#1| 4) |ULTIMATE.start_main_~#array~0#1.offset| (- 4)) v_DerPreprocessor_7) (+ (* |ULTIMATE.start_main_~column~0#1| 4) |ULTIMATE.start_main_~#array~0#1.offset| (- 4) (* |ULTIMATE.start_main_~row~0#1| (+ (- 17179869184) (* (mod ~ARR_SIZE~0 4294967296) 4)))) |ULTIMATE.start_main_~row~0#1|) (+ |ULTIMATE.start_main_~#array~0#1.offset| 4)) 0) (= v_DerPreprocessor_7 (select (store (store (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~row~0#1|) (* |ULTIMATE.start_main_~column~0#1| 4) |ULTIMATE.start_main_~#array~0#1.offset| (- 4)) v_DerPreprocessor_7) (+ (* |ULTIMATE.start_main_~column~0#1| 4) |ULTIMATE.start_main_~#array~0#1.offset| (- 4) (* |ULTIMATE.start_main_~row~0#1| (+ (- 17179869184) (* (mod ~ARR_SIZE~0 4294967296) 4)))) |ULTIMATE.start_main_~row~0#1|) (+ (* (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~row~0#1|) (* |ULTIMATE.start_main_~column~0#1| 4) |ULTIMATE.start_main_~#array~0#1.offset| (- 4)))))) (< 0 ~ARR_SIZE~0) (= |ULTIMATE.start_main_~sum~0#1| 0) (= |ULTIMATE.start_main_~row~0#1| (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~row~0#1|) (* |ULTIMATE.start_main_~column~0#1| 4) |ULTIMATE.start_main_~#array~0#1.offset| (- 4)))) (= (+ (- 1) |ULTIMATE.start_main_~column~0#1|) 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) |ULTIMATE.start_main_~#array~0#1.offset|) 0) (<= ~ARR_SIZE~0 32767))} is VALID [2022-02-20 14:24:38,878 INFO L290 TraceCheckUtils]: 17: Hoare triple {5406#(and (exists ((v_DerPreprocessor_7 Int)) (and (= (select (store (store (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~row~0#1|) (* |ULTIMATE.start_main_~column~0#1| 4) |ULTIMATE.start_main_~#array~0#1.offset| (- 4)) v_DerPreprocessor_7) (+ (* |ULTIMATE.start_main_~column~0#1| 4) |ULTIMATE.start_main_~#array~0#1.offset| (- 4) (* |ULTIMATE.start_main_~row~0#1| (+ (- 17179869184) (* (mod ~ARR_SIZE~0 4294967296) 4)))) |ULTIMATE.start_main_~row~0#1|) (+ |ULTIMATE.start_main_~#array~0#1.offset| 4)) 0) (= v_DerPreprocessor_7 (select (store (store (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~row~0#1|) (* |ULTIMATE.start_main_~column~0#1| 4) |ULTIMATE.start_main_~#array~0#1.offset| (- 4)) v_DerPreprocessor_7) (+ (* |ULTIMATE.start_main_~column~0#1| 4) |ULTIMATE.start_main_~#array~0#1.offset| (- 4) (* |ULTIMATE.start_main_~row~0#1| (+ (- 17179869184) (* (mod ~ARR_SIZE~0 4294967296) 4)))) |ULTIMATE.start_main_~row~0#1|) (+ (* (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~row~0#1|) (* |ULTIMATE.start_main_~column~0#1| 4) |ULTIMATE.start_main_~#array~0#1.offset| (- 4)))))) (< 0 ~ARR_SIZE~0) (= |ULTIMATE.start_main_~sum~0#1| 0) (= |ULTIMATE.start_main_~row~0#1| (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~row~0#1|) (* |ULTIMATE.start_main_~column~0#1| 4) |ULTIMATE.start_main_~#array~0#1.offset| (- 4)))) (= (+ (- 1) |ULTIMATE.start_main_~column~0#1|) 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) |ULTIMATE.start_main_~#array~0#1.offset|) 0) (<= ~ARR_SIZE~0 32767))} assume !!(main_~column~0#1 < ~ARR_SIZE~0); {5410#(and (exists ((v_DerPreprocessor_7 Int)) (and (= (select (store (store (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~row~0#1|) (* |ULTIMATE.start_main_~column~0#1| 4) |ULTIMATE.start_main_~#array~0#1.offset| (- 4)) v_DerPreprocessor_7) (+ (* |ULTIMATE.start_main_~column~0#1| 4) |ULTIMATE.start_main_~#array~0#1.offset| (- 4) (* |ULTIMATE.start_main_~row~0#1| (+ (- 17179869184) (* (mod ~ARR_SIZE~0 4294967296) 4)))) |ULTIMATE.start_main_~row~0#1|) (+ |ULTIMATE.start_main_~#array~0#1.offset| 4)) 0) (= v_DerPreprocessor_7 (select (store (store (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~row~0#1|) (* |ULTIMATE.start_main_~column~0#1| 4) |ULTIMATE.start_main_~#array~0#1.offset| (- 4)) v_DerPreprocessor_7) (+ (* |ULTIMATE.start_main_~column~0#1| 4) |ULTIMATE.start_main_~#array~0#1.offset| (- 4) (* |ULTIMATE.start_main_~row~0#1| (+ (- 17179869184) (* (mod ~ARR_SIZE~0 4294967296) 4)))) |ULTIMATE.start_main_~row~0#1|) (+ (* (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~row~0#1|) (* |ULTIMATE.start_main_~column~0#1| 4) |ULTIMATE.start_main_~#array~0#1.offset| (- 4)))))) (= |ULTIMATE.start_main_~sum~0#1| 0) (< |ULTIMATE.start_main_~column~0#1| ~ARR_SIZE~0) (= |ULTIMATE.start_main_~row~0#1| (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~row~0#1|) (* |ULTIMATE.start_main_~column~0#1| 4) |ULTIMATE.start_main_~#array~0#1.offset| (- 4)))) (= |ULTIMATE.start_main_~column~0#1| 1) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) |ULTIMATE.start_main_~#array~0#1.offset|) 0) (<= ~ARR_SIZE~0 32767))} is VALID [2022-02-20 14:24:38,881 INFO L290 TraceCheckUtils]: 18: Hoare triple {5410#(and (exists ((v_DerPreprocessor_7 Int)) (and (= (select (store (store (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~row~0#1|) (* |ULTIMATE.start_main_~column~0#1| 4) |ULTIMATE.start_main_~#array~0#1.offset| (- 4)) v_DerPreprocessor_7) (+ (* |ULTIMATE.start_main_~column~0#1| 4) |ULTIMATE.start_main_~#array~0#1.offset| (- 4) (* |ULTIMATE.start_main_~row~0#1| (+ (- 17179869184) (* (mod ~ARR_SIZE~0 4294967296) 4)))) |ULTIMATE.start_main_~row~0#1|) (+ |ULTIMATE.start_main_~#array~0#1.offset| 4)) 0) (= v_DerPreprocessor_7 (select (store (store (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~row~0#1|) (* |ULTIMATE.start_main_~column~0#1| 4) |ULTIMATE.start_main_~#array~0#1.offset| (- 4)) v_DerPreprocessor_7) (+ (* |ULTIMATE.start_main_~column~0#1| 4) |ULTIMATE.start_main_~#array~0#1.offset| (- 4) (* |ULTIMATE.start_main_~row~0#1| (+ (- 17179869184) (* (mod ~ARR_SIZE~0 4294967296) 4)))) |ULTIMATE.start_main_~row~0#1|) (+ (* (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~row~0#1|) (* |ULTIMATE.start_main_~column~0#1| 4) |ULTIMATE.start_main_~#array~0#1.offset| (- 4)))))) (= |ULTIMATE.start_main_~sum~0#1| 0) (< |ULTIMATE.start_main_~column~0#1| ~ARR_SIZE~0) (= |ULTIMATE.start_main_~row~0#1| (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~row~0#1|) (* |ULTIMATE.start_main_~column~0#1| 4) |ULTIMATE.start_main_~#array~0#1.offset| (- 4)))) (= |ULTIMATE.start_main_~column~0#1| 1) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) |ULTIMATE.start_main_~#array~0#1.offset|) 0) (<= ~ARR_SIZE~0 32767))} assume main_~row~0#1 == main_~column~0#1;call write~int(0, main_~#array~0#1.base, main_~#array~0#1.offset + main_~row~0#1 * (4 * (if ~ARR_SIZE~0 % 4294967296 <= 2147483647 then ~ARR_SIZE~0 % 4294967296 else ~ARR_SIZE~0 % 4294967296 - 4294967296)) + 4 * main_~row~0#1, 4); {5414#(and (= |ULTIMATE.start_main_~sum~0#1| 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~row~0#1|) |ULTIMATE.start_main_~#array~0#1.offset| (* |ULTIMATE.start_main_~row~0#1| 4))) 0) (< 1 ~ARR_SIZE~0) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~row~0#1|) |ULTIMATE.start_main_~#array~0#1.offset|)) |ULTIMATE.start_main_~row~0#1|) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) |ULTIMATE.start_main_~#array~0#1.offset|) 0) (<= ~ARR_SIZE~0 32767) (exists ((v_DerPreprocessor_9 Int)) (= 0 (select (store (store (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~row~0#1|) |ULTIMATE.start_main_~#array~0#1.offset| (* |ULTIMATE.start_main_~row~0#1| 4)) v_DerPreprocessor_9) (+ |ULTIMATE.start_main_~#array~0#1.offset| (* |ULTIMATE.start_main_~row~0#1| 4) (* |ULTIMATE.start_main_~row~0#1| (+ (- 17179869184) (* (mod ~ARR_SIZE~0 4294967296) 4)))) 0) (+ |ULTIMATE.start_main_~#array~0#1.offset| 4)))) (= |ULTIMATE.start_main_~row~0#1| 1))} is VALID [2022-02-20 14:24:38,883 INFO L290 TraceCheckUtils]: 19: Hoare triple {5414#(and (= |ULTIMATE.start_main_~sum~0#1| 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~row~0#1|) |ULTIMATE.start_main_~#array~0#1.offset| (* |ULTIMATE.start_main_~row~0#1| 4))) 0) (< 1 ~ARR_SIZE~0) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~row~0#1|) |ULTIMATE.start_main_~#array~0#1.offset|)) |ULTIMATE.start_main_~row~0#1|) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) |ULTIMATE.start_main_~#array~0#1.offset|) 0) (<= ~ARR_SIZE~0 32767) (exists ((v_DerPreprocessor_9 Int)) (= 0 (select (store (store (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~row~0#1|) |ULTIMATE.start_main_~#array~0#1.offset| (* |ULTIMATE.start_main_~row~0#1| 4)) v_DerPreprocessor_9) (+ |ULTIMATE.start_main_~#array~0#1.offset| (* |ULTIMATE.start_main_~row~0#1| 4) (* |ULTIMATE.start_main_~row~0#1| (+ (- 17179869184) (* (mod ~ARR_SIZE~0 4294967296) 4)))) 0) (+ |ULTIMATE.start_main_~#array~0#1.offset| 4)))) (= |ULTIMATE.start_main_~row~0#1| 1))} main_#t~post6#1 := main_~column~0#1;main_~column~0#1 := 1 + main_#t~post6#1;havoc main_#t~post6#1; {5414#(and (= |ULTIMATE.start_main_~sum~0#1| 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~row~0#1|) |ULTIMATE.start_main_~#array~0#1.offset| (* |ULTIMATE.start_main_~row~0#1| 4))) 0) (< 1 ~ARR_SIZE~0) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~row~0#1|) |ULTIMATE.start_main_~#array~0#1.offset|)) |ULTIMATE.start_main_~row~0#1|) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) |ULTIMATE.start_main_~#array~0#1.offset|) 0) (<= ~ARR_SIZE~0 32767) (exists ((v_DerPreprocessor_9 Int)) (= 0 (select (store (store (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~row~0#1|) |ULTIMATE.start_main_~#array~0#1.offset| (* |ULTIMATE.start_main_~row~0#1| 4)) v_DerPreprocessor_9) (+ |ULTIMATE.start_main_~#array~0#1.offset| (* |ULTIMATE.start_main_~row~0#1| 4) (* |ULTIMATE.start_main_~row~0#1| (+ (- 17179869184) (* (mod ~ARR_SIZE~0 4294967296) 4)))) 0) (+ |ULTIMATE.start_main_~#array~0#1.offset| 4)))) (= |ULTIMATE.start_main_~row~0#1| 1))} is VALID [2022-02-20 14:24:38,885 INFO L290 TraceCheckUtils]: 20: Hoare triple {5414#(and (= |ULTIMATE.start_main_~sum~0#1| 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~row~0#1|) |ULTIMATE.start_main_~#array~0#1.offset| (* |ULTIMATE.start_main_~row~0#1| 4))) 0) (< 1 ~ARR_SIZE~0) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~row~0#1|) |ULTIMATE.start_main_~#array~0#1.offset|)) |ULTIMATE.start_main_~row~0#1|) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) |ULTIMATE.start_main_~#array~0#1.offset|) 0) (<= ~ARR_SIZE~0 32767) (exists ((v_DerPreprocessor_9 Int)) (= 0 (select (store (store (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~row~0#1|) |ULTIMATE.start_main_~#array~0#1.offset| (* |ULTIMATE.start_main_~row~0#1| 4)) v_DerPreprocessor_9) (+ |ULTIMATE.start_main_~#array~0#1.offset| (* |ULTIMATE.start_main_~row~0#1| 4) (* |ULTIMATE.start_main_~row~0#1| (+ (- 17179869184) (* (mod ~ARR_SIZE~0 4294967296) 4)))) 0) (+ |ULTIMATE.start_main_~#array~0#1.offset| 4)))) (= |ULTIMATE.start_main_~row~0#1| 1))} assume !(main_~column~0#1 < ~ARR_SIZE~0); {5414#(and (= |ULTIMATE.start_main_~sum~0#1| 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~row~0#1|) |ULTIMATE.start_main_~#array~0#1.offset| (* |ULTIMATE.start_main_~row~0#1| 4))) 0) (< 1 ~ARR_SIZE~0) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~row~0#1|) |ULTIMATE.start_main_~#array~0#1.offset|)) |ULTIMATE.start_main_~row~0#1|) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) |ULTIMATE.start_main_~#array~0#1.offset|) 0) (<= ~ARR_SIZE~0 32767) (exists ((v_DerPreprocessor_9 Int)) (= 0 (select (store (store (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~row~0#1|) |ULTIMATE.start_main_~#array~0#1.offset| (* |ULTIMATE.start_main_~row~0#1| 4)) v_DerPreprocessor_9) (+ |ULTIMATE.start_main_~#array~0#1.offset| (* |ULTIMATE.start_main_~row~0#1| 4) (* |ULTIMATE.start_main_~row~0#1| (+ (- 17179869184) (* (mod ~ARR_SIZE~0 4294967296) 4)))) 0) (+ |ULTIMATE.start_main_~#array~0#1.offset| 4)))) (= |ULTIMATE.start_main_~row~0#1| 1))} is VALID [2022-02-20 14:24:38,886 INFO L290 TraceCheckUtils]: 21: Hoare triple {5414#(and (= |ULTIMATE.start_main_~sum~0#1| 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~row~0#1|) |ULTIMATE.start_main_~#array~0#1.offset| (* |ULTIMATE.start_main_~row~0#1| 4))) 0) (< 1 ~ARR_SIZE~0) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~row~0#1|) |ULTIMATE.start_main_~#array~0#1.offset|)) |ULTIMATE.start_main_~row~0#1|) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) |ULTIMATE.start_main_~#array~0#1.offset|) 0) (<= ~ARR_SIZE~0 32767) (exists ((v_DerPreprocessor_9 Int)) (= 0 (select (store (store (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~row~0#1|) |ULTIMATE.start_main_~#array~0#1.offset| (* |ULTIMATE.start_main_~row~0#1| 4)) v_DerPreprocessor_9) (+ |ULTIMATE.start_main_~#array~0#1.offset| (* |ULTIMATE.start_main_~row~0#1| 4) (* |ULTIMATE.start_main_~row~0#1| (+ (- 17179869184) (* (mod ~ARR_SIZE~0 4294967296) 4)))) 0) (+ |ULTIMATE.start_main_~#array~0#1.offset| 4)))) (= |ULTIMATE.start_main_~row~0#1| 1))} main_#t~post5#1 := main_~row~0#1;main_~row~0#1 := 1 + main_#t~post5#1;havoc main_#t~post5#1; {5424#(and (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~#array~0#1.offset| 4)) 0) (= |ULTIMATE.start_main_~sum~0#1| 0) (< 1 ~ARR_SIZE~0) (<= |ULTIMATE.start_main_~row~0#1| 2) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~#array~0#1.offset|)) 1) (exists ((v_DerPreprocessor_9 Int)) (= (select (store (store (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~#array~0#1.offset| 4) v_DerPreprocessor_9) (+ (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~#array~0#1.offset| (- 17179869180)) 0) (+ |ULTIMATE.start_main_~#array~0#1.offset| 4)) 0)) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) |ULTIMATE.start_main_~#array~0#1.offset|) 0) (<= ~ARR_SIZE~0 32767))} is VALID [2022-02-20 14:24:38,887 INFO L290 TraceCheckUtils]: 22: Hoare triple {5424#(and (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~#array~0#1.offset| 4)) 0) (= |ULTIMATE.start_main_~sum~0#1| 0) (< 1 ~ARR_SIZE~0) (<= |ULTIMATE.start_main_~row~0#1| 2) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~#array~0#1.offset|)) 1) (exists ((v_DerPreprocessor_9 Int)) (= (select (store (store (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~#array~0#1.offset| 4) v_DerPreprocessor_9) (+ (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~#array~0#1.offset| (- 17179869180)) 0) (+ |ULTIMATE.start_main_~#array~0#1.offset| 4)) 0)) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) |ULTIMATE.start_main_~#array~0#1.offset|) 0) (<= ~ARR_SIZE~0 32767))} assume !(main_~row~0#1 < ~ARR_SIZE~0); {5428#(and (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~#array~0#1.offset| 4)) 0) (= |ULTIMATE.start_main_~sum~0#1| 0) (< 1 ~ARR_SIZE~0) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~#array~0#1.offset|)) 1) (exists ((v_DerPreprocessor_9 Int)) (= (select (store (store (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~#array~0#1.offset| 4) v_DerPreprocessor_9) (+ (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~#array~0#1.offset| (- 17179869180)) 0) (+ |ULTIMATE.start_main_~#array~0#1.offset| 4)) 0)) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) |ULTIMATE.start_main_~#array~0#1.offset|) 0) (<= ~ARR_SIZE~0 2))} is VALID [2022-02-20 14:24:38,888 INFO L290 TraceCheckUtils]: 23: Hoare triple {5428#(and (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~#array~0#1.offset| 4)) 0) (= |ULTIMATE.start_main_~sum~0#1| 0) (< 1 ~ARR_SIZE~0) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~#array~0#1.offset|)) 1) (exists ((v_DerPreprocessor_9 Int)) (= (select (store (store (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~#array~0#1.offset| 4) v_DerPreprocessor_9) (+ (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~#array~0#1.offset| (- 17179869180)) 0) (+ |ULTIMATE.start_main_~#array~0#1.offset| 4)) 0)) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) |ULTIMATE.start_main_~#array~0#1.offset|) 0) (<= ~ARR_SIZE~0 2))} main_~row~0#1 := 0; {5432#(and (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~#array~0#1.offset| 4)) 0) (= |ULTIMATE.start_main_~sum~0#1| 0) (< 1 ~ARR_SIZE~0) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~#array~0#1.offset|)) 1) (= |ULTIMATE.start_main_~row~0#1| 0) (exists ((v_DerPreprocessor_9 Int)) (= (select (store (store (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~#array~0#1.offset| 4) v_DerPreprocessor_9) (+ (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~#array~0#1.offset| (- 17179869180)) 0) (+ |ULTIMATE.start_main_~#array~0#1.offset| 4)) 0)) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) |ULTIMATE.start_main_~#array~0#1.offset|) 0) (<= ~ARR_SIZE~0 2))} is VALID [2022-02-20 14:24:38,888 INFO L290 TraceCheckUtils]: 24: Hoare triple {5432#(and (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~#array~0#1.offset| 4)) 0) (= |ULTIMATE.start_main_~sum~0#1| 0) (< 1 ~ARR_SIZE~0) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~#array~0#1.offset|)) 1) (= |ULTIMATE.start_main_~row~0#1| 0) (exists ((v_DerPreprocessor_9 Int)) (= (select (store (store (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~#array~0#1.offset| 4) v_DerPreprocessor_9) (+ (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~#array~0#1.offset| (- 17179869180)) 0) (+ |ULTIMATE.start_main_~#array~0#1.offset| 4)) 0)) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) |ULTIMATE.start_main_~#array~0#1.offset|) 0) (<= ~ARR_SIZE~0 2))} assume !!(main_~row~0#1 < ~ARR_SIZE~0);main_~column~0#1 := 0; {5436#(and (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~#array~0#1.offset| 4)) 0) (= |ULTIMATE.start_main_~sum~0#1| 0) (< 1 ~ARR_SIZE~0) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~#array~0#1.offset|)) 1) (= |ULTIMATE.start_main_~row~0#1| 0) (= |ULTIMATE.start_main_~column~0#1| 0) (exists ((v_DerPreprocessor_9 Int)) (= (select (store (store (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~#array~0#1.offset| 4) v_DerPreprocessor_9) (+ (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~#array~0#1.offset| (- 17179869180)) 0) (+ |ULTIMATE.start_main_~#array~0#1.offset| 4)) 0)) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) |ULTIMATE.start_main_~#array~0#1.offset|) 0) (<= ~ARR_SIZE~0 2))} is VALID [2022-02-20 14:24:38,889 INFO L290 TraceCheckUtils]: 25: Hoare triple {5436#(and (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~#array~0#1.offset| 4)) 0) (= |ULTIMATE.start_main_~sum~0#1| 0) (< 1 ~ARR_SIZE~0) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~#array~0#1.offset|)) 1) (= |ULTIMATE.start_main_~row~0#1| 0) (= |ULTIMATE.start_main_~column~0#1| 0) (exists ((v_DerPreprocessor_9 Int)) (= (select (store (store (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~#array~0#1.offset| 4) v_DerPreprocessor_9) (+ (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~#array~0#1.offset| (- 17179869180)) 0) (+ |ULTIMATE.start_main_~#array~0#1.offset| 4)) 0)) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) |ULTIMATE.start_main_~#array~0#1.offset|) 0) (<= ~ARR_SIZE~0 2))} assume !!(main_~column~0#1 < ~ARR_SIZE~0);call main_#t~mem9#1 := read~int(main_~#array~0#1.base, main_~#array~0#1.offset + main_~row~0#1 * (4 * (if ~ARR_SIZE~0 % 4294967296 <= 2147483647 then ~ARR_SIZE~0 % 4294967296 else ~ARR_SIZE~0 % 4294967296 - 4294967296)) + 4 * main_~column~0#1, 4);main_~sum~0#1 := main_~sum~0#1 + main_#t~mem9#1;havoc main_#t~mem9#1; {5436#(and (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~#array~0#1.offset| 4)) 0) (= |ULTIMATE.start_main_~sum~0#1| 0) (< 1 ~ARR_SIZE~0) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~#array~0#1.offset|)) 1) (= |ULTIMATE.start_main_~row~0#1| 0) (= |ULTIMATE.start_main_~column~0#1| 0) (exists ((v_DerPreprocessor_9 Int)) (= (select (store (store (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~#array~0#1.offset| 4) v_DerPreprocessor_9) (+ (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~#array~0#1.offset| (- 17179869180)) 0) (+ |ULTIMATE.start_main_~#array~0#1.offset| 4)) 0)) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) |ULTIMATE.start_main_~#array~0#1.offset|) 0) (<= ~ARR_SIZE~0 2))} is VALID [2022-02-20 14:24:38,890 INFO L290 TraceCheckUtils]: 26: Hoare triple {5436#(and (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~#array~0#1.offset| 4)) 0) (= |ULTIMATE.start_main_~sum~0#1| 0) (< 1 ~ARR_SIZE~0) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~#array~0#1.offset|)) 1) (= |ULTIMATE.start_main_~row~0#1| 0) (= |ULTIMATE.start_main_~column~0#1| 0) (exists ((v_DerPreprocessor_9 Int)) (= (select (store (store (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~#array~0#1.offset| 4) v_DerPreprocessor_9) (+ (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~#array~0#1.offset| (- 17179869180)) 0) (+ |ULTIMATE.start_main_~#array~0#1.offset| 4)) 0)) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) |ULTIMATE.start_main_~#array~0#1.offset|) 0) (<= ~ARR_SIZE~0 2))} main_#t~post8#1 := main_~column~0#1;main_~column~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; {5443#(and (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~#array~0#1.offset| 4)) 0) (= |ULTIMATE.start_main_~sum~0#1| 0) (< 1 ~ARR_SIZE~0) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~#array~0#1.offset|)) 1) (= |ULTIMATE.start_main_~row~0#1| 0) (exists ((v_DerPreprocessor_9 Int)) (= (select (store (store (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~#array~0#1.offset| 4) v_DerPreprocessor_9) (+ (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~#array~0#1.offset| (- 17179869180)) 0) (+ |ULTIMATE.start_main_~#array~0#1.offset| 4)) 0)) (= (+ (- 1) |ULTIMATE.start_main_~column~0#1|) 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) |ULTIMATE.start_main_~#array~0#1.offset|) 0) (<= ~ARR_SIZE~0 2))} is VALID [2022-02-20 14:24:38,891 INFO L290 TraceCheckUtils]: 27: Hoare triple {5443#(and (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~#array~0#1.offset| 4)) 0) (= |ULTIMATE.start_main_~sum~0#1| 0) (< 1 ~ARR_SIZE~0) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~#array~0#1.offset|)) 1) (= |ULTIMATE.start_main_~row~0#1| 0) (exists ((v_DerPreprocessor_9 Int)) (= (select (store (store (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~#array~0#1.offset| 4) v_DerPreprocessor_9) (+ (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~#array~0#1.offset| (- 17179869180)) 0) (+ |ULTIMATE.start_main_~#array~0#1.offset| 4)) 0)) (= (+ (- 1) |ULTIMATE.start_main_~column~0#1|) 0) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) |ULTIMATE.start_main_~#array~0#1.offset|) 0) (<= ~ARR_SIZE~0 2))} assume !!(main_~column~0#1 < ~ARR_SIZE~0);call main_#t~mem9#1 := read~int(main_~#array~0#1.base, main_~#array~0#1.offset + main_~row~0#1 * (4 * (if ~ARR_SIZE~0 % 4294967296 <= 2147483647 then ~ARR_SIZE~0 % 4294967296 else ~ARR_SIZE~0 % 4294967296 - 4294967296)) + 4 * main_~column~0#1, 4);main_~sum~0#1 := main_~sum~0#1 + main_#t~mem9#1;havoc main_#t~mem9#1; {5432#(and (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~#array~0#1.offset| 4)) 0) (= |ULTIMATE.start_main_~sum~0#1| 0) (< 1 ~ARR_SIZE~0) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~#array~0#1.offset|)) 1) (= |ULTIMATE.start_main_~row~0#1| 0) (exists ((v_DerPreprocessor_9 Int)) (= (select (store (store (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~#array~0#1.offset| 4) v_DerPreprocessor_9) (+ (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~#array~0#1.offset| (- 17179869180)) 0) (+ |ULTIMATE.start_main_~#array~0#1.offset| 4)) 0)) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) |ULTIMATE.start_main_~#array~0#1.offset|) 0) (<= ~ARR_SIZE~0 2))} is VALID [2022-02-20 14:24:38,892 INFO L290 TraceCheckUtils]: 28: Hoare triple {5432#(and (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~#array~0#1.offset| 4)) 0) (= |ULTIMATE.start_main_~sum~0#1| 0) (< 1 ~ARR_SIZE~0) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~#array~0#1.offset|)) 1) (= |ULTIMATE.start_main_~row~0#1| 0) (exists ((v_DerPreprocessor_9 Int)) (= (select (store (store (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~#array~0#1.offset| 4) v_DerPreprocessor_9) (+ (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~#array~0#1.offset| (- 17179869180)) 0) (+ |ULTIMATE.start_main_~#array~0#1.offset| 4)) 0)) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) |ULTIMATE.start_main_~#array~0#1.offset|) 0) (<= ~ARR_SIZE~0 2))} main_#t~post8#1 := main_~column~0#1;main_~column~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; {5432#(and (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~#array~0#1.offset| 4)) 0) (= |ULTIMATE.start_main_~sum~0#1| 0) (< 1 ~ARR_SIZE~0) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~#array~0#1.offset|)) 1) (= |ULTIMATE.start_main_~row~0#1| 0) (exists ((v_DerPreprocessor_9 Int)) (= (select (store (store (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~#array~0#1.offset| 4) v_DerPreprocessor_9) (+ (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~#array~0#1.offset| (- 17179869180)) 0) (+ |ULTIMATE.start_main_~#array~0#1.offset| 4)) 0)) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) |ULTIMATE.start_main_~#array~0#1.offset|) 0) (<= ~ARR_SIZE~0 2))} is VALID [2022-02-20 14:24:38,893 INFO L290 TraceCheckUtils]: 29: Hoare triple {5432#(and (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~#array~0#1.offset| 4)) 0) (= |ULTIMATE.start_main_~sum~0#1| 0) (< 1 ~ARR_SIZE~0) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~#array~0#1.offset|)) 1) (= |ULTIMATE.start_main_~row~0#1| 0) (exists ((v_DerPreprocessor_9 Int)) (= (select (store (store (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~#array~0#1.offset| 4) v_DerPreprocessor_9) (+ (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~#array~0#1.offset| (- 17179869180)) 0) (+ |ULTIMATE.start_main_~#array~0#1.offset| 4)) 0)) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) |ULTIMATE.start_main_~#array~0#1.offset|) 0) (<= ~ARR_SIZE~0 2))} assume !(main_~column~0#1 < ~ARR_SIZE~0); {5432#(and (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~#array~0#1.offset| 4)) 0) (= |ULTIMATE.start_main_~sum~0#1| 0) (< 1 ~ARR_SIZE~0) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~#array~0#1.offset|)) 1) (= |ULTIMATE.start_main_~row~0#1| 0) (exists ((v_DerPreprocessor_9 Int)) (= (select (store (store (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~#array~0#1.offset| 4) v_DerPreprocessor_9) (+ (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~#array~0#1.offset| (- 17179869180)) 0) (+ |ULTIMATE.start_main_~#array~0#1.offset| 4)) 0)) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) |ULTIMATE.start_main_~#array~0#1.offset|) 0) (<= ~ARR_SIZE~0 2))} is VALID [2022-02-20 14:24:38,893 INFO L290 TraceCheckUtils]: 30: Hoare triple {5432#(and (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~#array~0#1.offset| 4)) 0) (= |ULTIMATE.start_main_~sum~0#1| 0) (< 1 ~ARR_SIZE~0) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~#array~0#1.offset|)) 1) (= |ULTIMATE.start_main_~row~0#1| 0) (exists ((v_DerPreprocessor_9 Int)) (= (select (store (store (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~#array~0#1.offset| 4) v_DerPreprocessor_9) (+ (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~#array~0#1.offset| (- 17179869180)) 0) (+ |ULTIMATE.start_main_~#array~0#1.offset| 4)) 0)) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) |ULTIMATE.start_main_~#array~0#1.offset|) 0) (<= ~ARR_SIZE~0 2))} main_#t~post7#1 := main_~row~0#1;main_~row~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {5456#(and (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~#array~0#1.offset| 4)) 0) (= (+ (- 1) |ULTIMATE.start_main_~row~0#1|) 0) (= |ULTIMATE.start_main_~sum~0#1| 0) (< 1 ~ARR_SIZE~0) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~#array~0#1.offset|)) 1) (exists ((v_DerPreprocessor_9 Int)) (= (select (store (store (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~#array~0#1.offset| 4) v_DerPreprocessor_9) (+ (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~#array~0#1.offset| (- 17179869180)) 0) (+ |ULTIMATE.start_main_~#array~0#1.offset| 4)) 0)) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) |ULTIMATE.start_main_~#array~0#1.offset|) 0) (<= ~ARR_SIZE~0 2))} is VALID [2022-02-20 14:24:38,894 INFO L290 TraceCheckUtils]: 31: Hoare triple {5456#(and (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~#array~0#1.offset| 4)) 0) (= (+ (- 1) |ULTIMATE.start_main_~row~0#1|) 0) (= |ULTIMATE.start_main_~sum~0#1| 0) (< 1 ~ARR_SIZE~0) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~#array~0#1.offset|)) 1) (exists ((v_DerPreprocessor_9 Int)) (= (select (store (store (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~#array~0#1.offset| 4) v_DerPreprocessor_9) (+ (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~#array~0#1.offset| (- 17179869180)) 0) (+ |ULTIMATE.start_main_~#array~0#1.offset| 4)) 0)) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) |ULTIMATE.start_main_~#array~0#1.offset|) 0) (<= ~ARR_SIZE~0 2))} assume !!(main_~row~0#1 < ~ARR_SIZE~0);main_~column~0#1 := 0; {5456#(and (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~#array~0#1.offset| 4)) 0) (= (+ (- 1) |ULTIMATE.start_main_~row~0#1|) 0) (= |ULTIMATE.start_main_~sum~0#1| 0) (< 1 ~ARR_SIZE~0) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~#array~0#1.offset|)) 1) (exists ((v_DerPreprocessor_9 Int)) (= (select (store (store (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~#array~0#1.offset| 4) v_DerPreprocessor_9) (+ (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~#array~0#1.offset| (- 17179869180)) 0) (+ |ULTIMATE.start_main_~#array~0#1.offset| 4)) 0)) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) |ULTIMATE.start_main_~#array~0#1.offset|) 0) (<= ~ARR_SIZE~0 2))} is VALID [2022-02-20 14:24:38,896 INFO L290 TraceCheckUtils]: 32: Hoare triple {5456#(and (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~#array~0#1.offset| 4)) 0) (= (+ (- 1) |ULTIMATE.start_main_~row~0#1|) 0) (= |ULTIMATE.start_main_~sum~0#1| 0) (< 1 ~ARR_SIZE~0) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~#array~0#1.offset|)) 1) (exists ((v_DerPreprocessor_9 Int)) (= (select (store (store (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~#array~0#1.offset| 4) v_DerPreprocessor_9) (+ (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~#array~0#1.offset| (- 17179869180)) 0) (+ |ULTIMATE.start_main_~#array~0#1.offset| 4)) 0)) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) |ULTIMATE.start_main_~#array~0#1.offset|) 0) (<= ~ARR_SIZE~0 2))} assume !!(main_~column~0#1 < ~ARR_SIZE~0);call main_#t~mem9#1 := read~int(main_~#array~0#1.base, main_~#array~0#1.offset + main_~row~0#1 * (4 * (if ~ARR_SIZE~0 % 4294967296 <= 2147483647 then ~ARR_SIZE~0 % 4294967296 else ~ARR_SIZE~0 % 4294967296 - 4294967296)) + 4 * main_~column~0#1, 4);main_~sum~0#1 := main_~sum~0#1 + main_#t~mem9#1;havoc main_#t~mem9#1; {5463#(and (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~#array~0#1.offset| 4)) 0) (= (+ (- 1) |ULTIMATE.start_main_~row~0#1|) 0) (< 1 ~ARR_SIZE~0) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~#array~0#1.offset|)) 1) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~row~0#1|) (* |ULTIMATE.start_main_~column~0#1| 4) |ULTIMATE.start_main_~#array~0#1.offset|)) |ULTIMATE.start_main_~sum~0#1|) (exists ((v_DerPreprocessor_9 Int)) (= (select (store (store (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~#array~0#1.offset| 4) v_DerPreprocessor_9) (+ (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~#array~0#1.offset| (- 17179869180)) 0) (+ |ULTIMATE.start_main_~#array~0#1.offset| 4)) 0)) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) |ULTIMATE.start_main_~#array~0#1.offset|) 0) (<= ~ARR_SIZE~0 2))} is VALID [2022-02-20 14:24:38,898 INFO L290 TraceCheckUtils]: 33: Hoare triple {5463#(and (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~#array~0#1.offset| 4)) 0) (= (+ (- 1) |ULTIMATE.start_main_~row~0#1|) 0) (< 1 ~ARR_SIZE~0) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~#array~0#1.offset|)) 1) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~row~0#1|) (* |ULTIMATE.start_main_~column~0#1| 4) |ULTIMATE.start_main_~#array~0#1.offset|)) |ULTIMATE.start_main_~sum~0#1|) (exists ((v_DerPreprocessor_9 Int)) (= (select (store (store (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~#array~0#1.offset| 4) v_DerPreprocessor_9) (+ (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~#array~0#1.offset| (- 17179869180)) 0) (+ |ULTIMATE.start_main_~#array~0#1.offset| 4)) 0)) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) |ULTIMATE.start_main_~#array~0#1.offset|) 0) (<= ~ARR_SIZE~0 2))} main_#t~post8#1 := main_~column~0#1;main_~column~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; {5467#(and (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~#array~0#1.offset| 4)) 0) (= (+ (- 1) |ULTIMATE.start_main_~row~0#1|) 0) (< 1 ~ARR_SIZE~0) (= |ULTIMATE.start_main_~sum~0#1| (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~row~0#1|) (* |ULTIMATE.start_main_~column~0#1| 4) |ULTIMATE.start_main_~#array~0#1.offset| (- 4)))) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~#array~0#1.offset|)) 1) (exists ((v_DerPreprocessor_9 Int)) (= (select (store (store (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~#array~0#1.offset| 4) v_DerPreprocessor_9) (+ (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~#array~0#1.offset| (- 17179869180)) 0) (+ |ULTIMATE.start_main_~#array~0#1.offset| 4)) 0)) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) |ULTIMATE.start_main_~#array~0#1.offset|) 0) (<= ~ARR_SIZE~0 2))} is VALID [2022-02-20 14:24:38,903 INFO L290 TraceCheckUtils]: 34: Hoare triple {5467#(and (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~#array~0#1.offset| 4)) 0) (= (+ (- 1) |ULTIMATE.start_main_~row~0#1|) 0) (< 1 ~ARR_SIZE~0) (= |ULTIMATE.start_main_~sum~0#1| (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~row~0#1|) (* |ULTIMATE.start_main_~column~0#1| 4) |ULTIMATE.start_main_~#array~0#1.offset| (- 4)))) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~#array~0#1.offset|)) 1) (exists ((v_DerPreprocessor_9 Int)) (= (select (store (store (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) (+ (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~#array~0#1.offset| 4) v_DerPreprocessor_9) (+ (* (mod ~ARR_SIZE~0 4294967296) 4) |ULTIMATE.start_main_~#array~0#1.offset| (- 17179869180)) 0) (+ |ULTIMATE.start_main_~#array~0#1.offset| 4)) 0)) (= (select (select |#memory_int| |ULTIMATE.start_main_~#array~0#1.base|) |ULTIMATE.start_main_~#array~0#1.offset|) 0) (<= ~ARR_SIZE~0 2))} assume !!(main_~column~0#1 < ~ARR_SIZE~0);call main_#t~mem9#1 := read~int(main_~#array~0#1.base, main_~#array~0#1.offset + main_~row~0#1 * (4 * (if ~ARR_SIZE~0 % 4294967296 <= 2147483647 then ~ARR_SIZE~0 % 4294967296 else ~ARR_SIZE~0 % 4294967296 - 4294967296)) + 4 * main_~column~0#1, 4);main_~sum~0#1 := main_~sum~0#1 + main_#t~mem9#1;havoc main_#t~mem9#1; {5471#(and (< 1 ~ARR_SIZE~0) (< |ULTIMATE.start_main_~column~0#1| ~ARR_SIZE~0) (or (and (not (= 4 (+ (* |ULTIMATE.start_main_~column~0#1| 4) (* (* (mod ~ARR_SIZE~0 4294967296) |ULTIMATE.start_main_~row~0#1|) 4)))) (= |ULTIMATE.start_main_~sum~0#1| 1)) (and (not (= (+ (* (mod ~ARR_SIZE~0 4294967296) 4) 4) (+ (* |ULTIMATE.start_main_~column~0#1| 4) (* (* (mod ~ARR_SIZE~0 4294967296) |ULTIMATE.start_main_~row~0#1|) 4)))) (not (= (* (mod ~ARR_SIZE~0 4294967296) 4) (+ (* |ULTIMATE.start_main_~column~0#1| 4) (* (* (mod ~ARR_SIZE~0 4294967296) |ULTIMATE.start_main_~row~0#1|) 4)))) (or (= |ULTIMATE.start_main_~sum~0#1| 0) (not (= 4 (+ (* |ULTIMATE.start_main_~column~0#1| 4) (* (* (mod ~ARR_SIZE~0 4294967296) |ULTIMATE.start_main_~row~0#1|) 4))))))) (<= ~ARR_SIZE~0 2) (= |ULTIMATE.start_main_~row~0#1| 1))} is VALID [2022-02-20 14:24:38,905 INFO L290 TraceCheckUtils]: 35: Hoare triple {5471#(and (< 1 ~ARR_SIZE~0) (< |ULTIMATE.start_main_~column~0#1| ~ARR_SIZE~0) (or (and (not (= 4 (+ (* |ULTIMATE.start_main_~column~0#1| 4) (* (* (mod ~ARR_SIZE~0 4294967296) |ULTIMATE.start_main_~row~0#1|) 4)))) (= |ULTIMATE.start_main_~sum~0#1| 1)) (and (not (= (+ (* (mod ~ARR_SIZE~0 4294967296) 4) 4) (+ (* |ULTIMATE.start_main_~column~0#1| 4) (* (* (mod ~ARR_SIZE~0 4294967296) |ULTIMATE.start_main_~row~0#1|) 4)))) (not (= (* (mod ~ARR_SIZE~0 4294967296) 4) (+ (* |ULTIMATE.start_main_~column~0#1| 4) (* (* (mod ~ARR_SIZE~0 4294967296) |ULTIMATE.start_main_~row~0#1|) 4)))) (or (= |ULTIMATE.start_main_~sum~0#1| 0) (not (= 4 (+ (* |ULTIMATE.start_main_~column~0#1| 4) (* (* (mod ~ARR_SIZE~0 4294967296) |ULTIMATE.start_main_~row~0#1|) 4))))))) (<= ~ARR_SIZE~0 2) (= |ULTIMATE.start_main_~row~0#1| 1))} main_#t~post8#1 := main_~column~0#1;main_~column~0#1 := 1 + main_#t~post8#1;havoc main_#t~post8#1; {5475#(and (< 1 ~ARR_SIZE~0) (<= ~ARR_SIZE~0 2) (or (and (< |ULTIMATE.start_main_~column~0#1| (+ ~ARR_SIZE~0 1)) (= |ULTIMATE.start_main_~sum~0#1| 1)) (and (= |ULTIMATE.start_main_~sum~0#1| 0) (< (+ (* (mod ~ARR_SIZE~0 4294967296) |ULTIMATE.start_main_~row~0#1|) |ULTIMATE.start_main_~column~0#1|) (+ (mod ~ARR_SIZE~0 4294967296) 1))) (< (+ (* (mod ~ARR_SIZE~0 4294967296) |ULTIMATE.start_main_~row~0#1|) |ULTIMATE.start_main_~column~0#1|) 2)) (= |ULTIMATE.start_main_~row~0#1| 1))} is VALID [2022-02-20 14:24:38,906 INFO L290 TraceCheckUtils]: 36: Hoare triple {5475#(and (< 1 ~ARR_SIZE~0) (<= ~ARR_SIZE~0 2) (or (and (< |ULTIMATE.start_main_~column~0#1| (+ ~ARR_SIZE~0 1)) (= |ULTIMATE.start_main_~sum~0#1| 1)) (and (= |ULTIMATE.start_main_~sum~0#1| 0) (< (+ (* (mod ~ARR_SIZE~0 4294967296) |ULTIMATE.start_main_~row~0#1|) |ULTIMATE.start_main_~column~0#1|) (+ (mod ~ARR_SIZE~0 4294967296) 1))) (< (+ (* (mod ~ARR_SIZE~0 4294967296) |ULTIMATE.start_main_~row~0#1|) |ULTIMATE.start_main_~column~0#1|) 2)) (= |ULTIMATE.start_main_~row~0#1| 1))} assume !(main_~column~0#1 < ~ARR_SIZE~0); {5479#(and (< 1 ~ARR_SIZE~0) (= |ULTIMATE.start_main_~sum~0#1| 1) (<= ~ARR_SIZE~0 2) (= |ULTIMATE.start_main_~row~0#1| 1))} is VALID [2022-02-20 14:24:38,906 INFO L290 TraceCheckUtils]: 37: Hoare triple {5479#(and (< 1 ~ARR_SIZE~0) (= |ULTIMATE.start_main_~sum~0#1| 1) (<= ~ARR_SIZE~0 2) (= |ULTIMATE.start_main_~row~0#1| 1))} main_#t~post7#1 := main_~row~0#1;main_~row~0#1 := 1 + main_#t~post7#1;havoc main_#t~post7#1; {5483#(and (< 1 ~ARR_SIZE~0) (<= |ULTIMATE.start_main_~row~0#1| 2) (= |ULTIMATE.start_main_~sum~0#1| 1) (<= ~ARR_SIZE~0 2))} is VALID [2022-02-20 14:24:38,906 INFO L290 TraceCheckUtils]: 38: Hoare triple {5483#(and (< 1 ~ARR_SIZE~0) (<= |ULTIMATE.start_main_~row~0#1| 2) (= |ULTIMATE.start_main_~sum~0#1| 1) (<= ~ARR_SIZE~0 2))} assume !(main_~row~0#1 < ~ARR_SIZE~0); {5487#(and (< 1 ~ARR_SIZE~0) (= |ULTIMATE.start_main_~sum~0#1| 1) (<= ~ARR_SIZE~0 2))} is VALID [2022-02-20 14:24:38,907 INFO L290 TraceCheckUtils]: 39: Hoare triple {5487#(and (< 1 ~ARR_SIZE~0) (= |ULTIMATE.start_main_~sum~0#1| 1) (<= ~ARR_SIZE~0 2))} assume { :begin_inline___VERIFIER_assert } true;__VERIFIER_assert_#in~cond#1 := (if 2 * main_~sum~0#1 == ~ARR_SIZE~0 * (~ARR_SIZE~0 - 1) * (~ARR_SIZE~0 - 1) then 1 else 0);havoc __VERIFIER_assert_~cond#1;__VERIFIER_assert_~cond#1 := __VERIFIER_assert_#in~cond#1; {5491#(<= 1 |ULTIMATE.start___VERIFIER_assert_~cond#1|)} is VALID [2022-02-20 14:24:38,908 INFO L290 TraceCheckUtils]: 40: Hoare triple {5491#(<= 1 |ULTIMATE.start___VERIFIER_assert_~cond#1|)} assume 0 == __VERIFIER_assert_~cond#1; {5346#false} is VALID [2022-02-20 14:24:38,908 INFO L290 TraceCheckUtils]: 41: Hoare triple {5346#false} assume !false; {5346#false} is VALID [2022-02-20 14:24:38,908 INFO L134 CoverageAnalysis]: Checked inductivity of 56 backedges. 5 proven. 51 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-02-20 14:24:38,908 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 14:24:48,730 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 2, 0 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 0 case distinctions, treesize of input 56 treesize of output 52 [2022-02-20 14:24:48,938 INFO L356 Elim1Store]: treesize reduction 0, result has 100.0 percent of original size [2022-02-20 14:24:48,939 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 2 stores, 0 select indices, 0 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 2 new quantified variables, introduced 2 case distinctions, treesize of input 52 treesize of output 121 [2022-02-20 14:24:49,049 INFO L356 Elim1Store]: treesize reduction 59, result has 1.7 percent of original size [2022-02-20 14:24:49,049 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 1 stores, 1 select indices, 1 select index equivalence classes, 0 disjoint index pairs (out of 0 index pairs), introduced 1 new quantified variables, introduced 2 case distinctions, treesize of input 82 treesize of output 4 [2022-02-20 14:24:49,814 INFO L356 Elim1Store]: treesize reduction 163, result has 22.0 percent of original size [2022-02-20 14:24:49,818 INFO L390 Elim1Store]: Elim1 did not use preprocessing eliminated variable of array dimension 1, 0 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 299906451 treesize of output 284702131