./Ultimate.py --spec ../sv-benchmarks/c/properties/unreach-call.prp --file ../sv-benchmarks/c/nla-digbench-scaling/fermat1-ll_unwindbound5.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/nla-digbench-scaling/fermat1-ll_unwindbound5.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 7f97a505fe6488215cf15708661c3a7c87a5132fbff317a4b6f7f9cc44d66008 --- Real Ultimate output --- This is Ultimate 0.2.2-dev-03d7b7b [2022-02-20 17:24:04,470 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-02-20 17:24:04,471 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-02-20 17:24:04,491 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-02-20 17:24:04,491 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-02-20 17:24:04,492 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-02-20 17:24:04,493 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-02-20 17:24:04,494 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-02-20 17:24:04,495 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-02-20 17:24:04,496 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-02-20 17:24:04,496 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-02-20 17:24:04,497 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-02-20 17:24:04,497 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-02-20 17:24:04,498 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-02-20 17:24:04,499 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-02-20 17:24:04,500 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-02-20 17:24:04,500 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-02-20 17:24:04,501 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-02-20 17:24:04,502 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-02-20 17:24:04,503 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-02-20 17:24:04,504 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-02-20 17:24:04,505 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-02-20 17:24:04,506 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-02-20 17:24:04,506 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-02-20 17:24:04,508 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-02-20 17:24:04,509 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-02-20 17:24:04,509 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-02-20 17:24:04,509 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-02-20 17:24:04,510 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-02-20 17:24:04,510 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-02-20 17:24:04,511 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-02-20 17:24:04,511 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-02-20 17:24:04,512 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-02-20 17:24:04,512 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-02-20 17:24:04,513 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-02-20 17:24:04,513 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-02-20 17:24:04,514 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-02-20 17:24:04,514 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-02-20 17:24:04,514 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-02-20 17:24:04,515 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-02-20 17:24:04,515 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-02-20 17:24:04,516 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Default.epf [2022-02-20 17:24:04,529 INFO L113 SettingsManager]: Loading preferences was successful [2022-02-20 17:24:04,530 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-02-20 17:24:04,530 INFO L136 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2022-02-20 17:24:04,530 INFO L138 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2022-02-20 17:24:04,531 INFO L136 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2022-02-20 17:24:04,531 INFO L138 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2022-02-20 17:24:04,531 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-02-20 17:24:04,531 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-02-20 17:24:04,532 INFO L138 SettingsManager]: * Use SBE=true [2022-02-20 17:24:04,532 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-02-20 17:24:04,532 INFO L138 SettingsManager]: * sizeof long=4 [2022-02-20 17:24:04,532 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-02-20 17:24:04,532 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-02-20 17:24:04,532 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-02-20 17:24:04,533 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-02-20 17:24:04,533 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-02-20 17:24:04,533 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-02-20 17:24:04,533 INFO L138 SettingsManager]: * sizeof long double=12 [2022-02-20 17:24:04,533 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-02-20 17:24:04,533 INFO L138 SettingsManager]: * Use constant arrays=true [2022-02-20 17:24:04,533 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-02-20 17:24:04,539 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-02-20 17:24:04,539 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-02-20 17:24:04,540 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-02-20 17:24:04,540 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-02-20 17:24:04,540 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-02-20 17:24:04,540 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2022-02-20 17:24:04,541 INFO L138 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2022-02-20 17:24:04,542 INFO L138 SettingsManager]: * Trace refinement strategy=CAMEL [2022-02-20 17:24:04,542 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in [2022-02-20 17:24:04,542 INFO L138 SettingsManager]: * Large block encoding in concurrent analysis=OFF [2022-02-20 17:24:04,542 INFO L138 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2022-02-20 17:24:04,542 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-02-20 17:24:04,542 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 -> 7f97a505fe6488215cf15708661c3a7c87a5132fbff317a4b6f7f9cc44d66008 [2022-02-20 17:24:04,721 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-02-20 17:24:04,749 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-02-20 17:24:04,751 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-02-20 17:24:04,752 INFO L271 PluginConnector]: Initializing CDTParser... [2022-02-20 17:24:04,752 INFO L275 PluginConnector]: CDTParser initialized [2022-02-20 17:24:04,753 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/nla-digbench-scaling/fermat1-ll_unwindbound5.c [2022-02-20 17:24:04,810 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/207fce322/022fa9a5eda647f39d036d13bbcb25a0/FLAG3875725fd [2022-02-20 17:24:05,178 INFO L306 CDTParser]: Found 1 translation units. [2022-02-20 17:24:05,178 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/nla-digbench-scaling/fermat1-ll_unwindbound5.c [2022-02-20 17:24:05,182 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/207fce322/022fa9a5eda647f39d036d13bbcb25a0/FLAG3875725fd [2022-02-20 17:24:05,191 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/207fce322/022fa9a5eda647f39d036d13bbcb25a0 [2022-02-20 17:24:05,193 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-02-20 17:24:05,195 INFO L131 ToolchainWalker]: Walking toolchain with 6 elements. [2022-02-20 17:24:05,196 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-02-20 17:24:05,196 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-02-20 17:24:05,198 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-02-20 17:24:05,199 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 05:24:05" (1/1) ... [2022-02-20 17:24:05,200 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@de33ba and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 05:24:05, skipping insertion in model container [2022-02-20 17:24:05,200 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 05:24:05" (1/1) ... [2022-02-20 17:24:05,212 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-02-20 17:24:05,226 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-02-20 17:24:05,345 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/nla-digbench-scaling/fermat1-ll_unwindbound5.c[535,548] [2022-02-20 17:24:05,367 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-20 17:24:05,372 INFO L203 MainTranslator]: Completed pre-run [2022-02-20 17:24:05,380 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/nla-digbench-scaling/fermat1-ll_unwindbound5.c[535,548] [2022-02-20 17:24:05,390 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-20 17:24:05,403 INFO L208 MainTranslator]: Completed translation [2022-02-20 17:24:05,403 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 05:24:05 WrapperNode [2022-02-20 17:24:05,403 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-02-20 17:24:05,404 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2022-02-20 17:24:05,404 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2022-02-20 17:24:05,405 INFO L275 PluginConnector]: Boogie Procedure Inliner initialized [2022-02-20 17:24:05,410 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 05:24:05" (1/1) ... [2022-02-20 17:24:05,423 INFO L185 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 05:24:05" (1/1) ... [2022-02-20 17:24:05,437 INFO L137 Inliner]: procedures = 14, calls = 13, calls flagged for inlining = 2, calls inlined = 2, statements flattened = 67 [2022-02-20 17:24:05,437 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2022-02-20 17:24:05,438 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-02-20 17:24:05,438 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-02-20 17:24:05,438 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-02-20 17:24:05,443 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 05:24:05" (1/1) ... [2022-02-20 17:24:05,443 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 05:24:05" (1/1) ... [2022-02-20 17:24:05,444 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 05:24:05" (1/1) ... [2022-02-20 17:24:05,444 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 05:24:05" (1/1) ... [2022-02-20 17:24:05,447 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 05:24:05" (1/1) ... [2022-02-20 17:24:05,449 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 05:24:05" (1/1) ... [2022-02-20 17:24:05,450 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 05:24:05" (1/1) ... [2022-02-20 17:24:05,452 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-02-20 17:24:05,453 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-02-20 17:24:05,453 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-02-20 17:24:05,453 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-02-20 17:24:05,455 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 05:24:05" (1/1) ... [2022-02-20 17:24:05,460 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-02-20 17:24:05,472 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 17:24:05,487 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 17:24:05,489 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 17:24:05,515 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-02-20 17:24:05,519 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-02-20 17:24:05,519 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-02-20 17:24:05,519 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-02-20 17:24:05,520 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-02-20 17:24:05,520 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-02-20 17:24:05,520 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-02-20 17:24:05,520 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-02-20 17:24:05,571 INFO L234 CfgBuilder]: Building ICFG [2022-02-20 17:24:05,572 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-02-20 17:24:05,746 INFO L275 CfgBuilder]: Performing block encoding [2022-02-20 17:24:05,752 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-02-20 17:24:05,752 INFO L299 CfgBuilder]: Removed 3 assume(true) statements. [2022-02-20 17:24:05,754 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 20.02 05:24:05 BoogieIcfgContainer [2022-02-20 17:24:05,754 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-02-20 17:24:05,755 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-02-20 17:24:05,755 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-02-20 17:24:05,758 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-02-20 17:24:05,758 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 20.02 05:24:05" (1/3) ... [2022-02-20 17:24:05,759 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@69eb05f and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 20.02 05:24:05, skipping insertion in model container [2022-02-20 17:24:05,759 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 05:24:05" (2/3) ... [2022-02-20 17:24:05,760 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@69eb05f and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 20.02 05:24:05, skipping insertion in model container [2022-02-20 17:24:05,760 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 20.02 05:24:05" (3/3) ... [2022-02-20 17:24:05,761 INFO L111 eAbstractionObserver]: Analyzing ICFG fermat1-ll_unwindbound5.c [2022-02-20 17:24:05,765 INFO L205 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2022-02-20 17:24:05,766 INFO L164 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-02-20 17:24:05,804 INFO L338 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-02-20 17:24:05,809 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 17:24:05,809 INFO L340 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-02-20 17:24:05,824 INFO L276 IsEmpty]: Start isEmpty. Operand has 32 states, 22 states have (on average 1.5454545454545454) internal successors, (34), 23 states have internal predecessors, (34), 6 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-02-20 17:24:05,827 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 19 [2022-02-20 17:24:05,827 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 17:24:05,828 INFO L514 BasicCegarLoop]: trace histogram [2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 17:24:05,828 INFO L402 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 17:24:05,831 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 17:24:05,832 INFO L85 PathProgramCache]: Analyzing trace with hash 738208203, now seen corresponding path program 1 times [2022-02-20 17:24:05,838 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 17:24:05,838 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [715746021] [2022-02-20 17:24:05,839 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 17:24:05,841 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 17:24:05,946 ERROR L252 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-02-20 17:24:05,947 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1981671383] [2022-02-20 17:24:05,948 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 17:24:05,948 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 17:24:05,948 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 17:24:05,952 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 17:24:05,953 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 17:24:06,020 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 17:24:06,022 INFO L263 TraceCheckSpWp]: Trace formula consists of 65 conjuncts, 1 conjunts are in the unsatisfiable core [2022-02-20 17:24:06,029 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 17:24:06,031 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 17:24:06,142 INFO L290 TraceCheckUtils]: 0: Hoare triple {35#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(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {35#true} is VALID [2022-02-20 17:24:06,142 INFO L290 TraceCheckUtils]: 1: Hoare triple {35#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~nondet5#1, main_#t~post7#1, main_#t~post8#1, main_#t~post6#1, main_~A~0#1, main_~R~0#1, main_~u~0#1, main_~v~0#1, main_~r~0#1;havoc main_~A~0#1;havoc main_~R~0#1;havoc main_~u~0#1;havoc main_~v~0#1;havoc main_~r~0#1;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_~A~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1;assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647;main_~R~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; {35#true} is VALID [2022-02-20 17:24:06,143 INFO L272 TraceCheckUtils]: 2: Hoare triple {35#true} call assume_abort_if_not((if (main_~R~0#1 - 1) * (main_~R~0#1 - 1) < main_~A~0#1 then 1 else 0)); {35#true} is VALID [2022-02-20 17:24:06,143 INFO L290 TraceCheckUtils]: 3: Hoare triple {35#true} ~cond := #in~cond; {35#true} is VALID [2022-02-20 17:24:06,144 INFO L290 TraceCheckUtils]: 4: Hoare triple {35#true} assume 0 == ~cond;assume false; {36#false} is VALID [2022-02-20 17:24:06,144 INFO L290 TraceCheckUtils]: 5: Hoare triple {36#false} assume true; {36#false} is VALID [2022-02-20 17:24:06,145 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {36#false} {35#true} #87#return; {36#false} is VALID [2022-02-20 17:24:06,145 INFO L272 TraceCheckUtils]: 7: Hoare triple {36#false} call assume_abort_if_not((if 1 == (if main_~A~0#1 < 0 && 0 != main_~A~0#1 % 2 then main_~A~0#1 % 2 - 2 else main_~A~0#1 % 2) then 1 else 0)); {36#false} is VALID [2022-02-20 17:24:06,146 INFO L290 TraceCheckUtils]: 8: Hoare triple {36#false} ~cond := #in~cond; {36#false} is VALID [2022-02-20 17:24:06,146 INFO L290 TraceCheckUtils]: 9: Hoare triple {36#false} assume 0 == ~cond;assume false; {36#false} is VALID [2022-02-20 17:24:06,146 INFO L290 TraceCheckUtils]: 10: Hoare triple {36#false} assume true; {36#false} is VALID [2022-02-20 17:24:06,147 INFO L284 TraceCheckUtils]: 11: Hoare quadruple {36#false} {36#false} #89#return; {36#false} is VALID [2022-02-20 17:24:06,147 INFO L290 TraceCheckUtils]: 12: Hoare triple {36#false} main_~u~0#1 := 1 + 2 * main_~R~0#1;main_~v~0#1 := 1;main_~r~0#1 := main_~R~0#1 * main_~R~0#1 - main_~A~0#1; {36#false} is VALID [2022-02-20 17:24:06,147 INFO L290 TraceCheckUtils]: 13: Hoare triple {36#false} assume !true; {36#false} is VALID [2022-02-20 17:24:06,147 INFO L272 TraceCheckUtils]: 14: Hoare triple {36#false} call __VERIFIER_assert((if 4 * main_~A~0#1 == main_~u~0#1 * main_~u~0#1 - main_~v~0#1 * main_~v~0#1 - 2 * main_~u~0#1 + 2 * main_~v~0#1 then 1 else 0)); {36#false} is VALID [2022-02-20 17:24:06,148 INFO L290 TraceCheckUtils]: 15: Hoare triple {36#false} ~cond := #in~cond; {36#false} is VALID [2022-02-20 17:24:06,148 INFO L290 TraceCheckUtils]: 16: Hoare triple {36#false} assume 0 == ~cond; {36#false} is VALID [2022-02-20 17:24:06,148 INFO L290 TraceCheckUtils]: 17: Hoare triple {36#false} assume !false; {36#false} is VALID [2022-02-20 17:24:06,149 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 2 proven. 0 refuted. 0 times theorem prover too weak. 2 trivial. 0 not checked. [2022-02-20 17:24:06,150 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 17:24:06,150 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 17:24:06,150 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [715746021] [2022-02-20 17:24:06,150 WARN L317 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-02-20 17:24:06,152 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1981671383] [2022-02-20 17:24:06,152 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1981671383] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 17:24:06,152 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 17:24:06,153 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2022-02-20 17:24:06,155 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1420751675] [2022-02-20 17:24:06,155 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 17:24:06,158 INFO L78 Accepts]: Start accepts. Automaton has has 2 states, 2 states have (on average 6.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 18 [2022-02-20 17:24:06,160 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 17:24:06,162 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 2 states, 2 states have (on average 6.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-02-20 17:24:06,181 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 17 edges. 17 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 17:24:06,182 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 2 states [2022-02-20 17:24:06,182 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 17:24:06,205 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2022-02-20 17:24:06,206 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2022-02-20 17:24:06,209 INFO L87 Difference]: Start difference. First operand has 32 states, 22 states have (on average 1.5454545454545454) internal successors, (34), 23 states have internal predecessors, (34), 6 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) Second operand has 2 states, 2 states have (on average 6.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-02-20 17:24:06,280 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:24:06,286 INFO L93 Difference]: Finished difference Result 61 states and 94 transitions. [2022-02-20 17:24:06,286 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2022-02-20 17:24:06,287 INFO L78 Accepts]: Start accepts. Automaton has has 2 states, 2 states have (on average 6.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 18 [2022-02-20 17:24:06,288 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 17:24:06,289 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 2 states, 2 states have (on average 6.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-02-20 17:24:06,304 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2 states to 2 states and 94 transitions. [2022-02-20 17:24:06,304 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 2 states, 2 states have (on average 6.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-02-20 17:24:06,308 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2 states to 2 states and 94 transitions. [2022-02-20 17:24:06,308 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 2 states and 94 transitions. [2022-02-20 17:24:06,388 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 94 edges. 94 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 17:24:06,399 INFO L225 Difference]: With dead ends: 61 [2022-02-20 17:24:06,399 INFO L226 Difference]: Without dead ends: 28 [2022-02-20 17:24:06,402 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 17 GetRequests, 17 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 17:24:06,405 INFO L933 BasicCegarLoop]: 41 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, 41 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 17:24:06,407 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [0 Valid, 41 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 0 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 17:24:06,418 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 28 states. [2022-02-20 17:24:06,438 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 28 to 28. [2022-02-20 17:24:06,438 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 17:24:06,439 INFO L82 GeneralOperation]: Start isEquivalent. First operand 28 states. Second operand has 28 states, 19 states have (on average 1.368421052631579) internal successors, (26), 20 states have internal predecessors, (26), 6 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) [2022-02-20 17:24:06,440 INFO L74 IsIncluded]: Start isIncluded. First operand 28 states. Second operand has 28 states, 19 states have (on average 1.368421052631579) internal successors, (26), 20 states have internal predecessors, (26), 6 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) [2022-02-20 17:24:06,440 INFO L87 Difference]: Start difference. First operand 28 states. Second operand has 28 states, 19 states have (on average 1.368421052631579) internal successors, (26), 20 states have internal predecessors, (26), 6 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) [2022-02-20 17:24:06,443 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:24:06,445 INFO L93 Difference]: Finished difference Result 28 states and 37 transitions. [2022-02-20 17:24:06,445 INFO L276 IsEmpty]: Start isEmpty. Operand 28 states and 37 transitions. [2022-02-20 17:24:06,445 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 17:24:06,446 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 17:24:06,447 INFO L74 IsIncluded]: Start isIncluded. First operand has 28 states, 19 states have (on average 1.368421052631579) internal successors, (26), 20 states have internal predecessors, (26), 6 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) Second operand 28 states. [2022-02-20 17:24:06,449 INFO L87 Difference]: Start difference. First operand has 28 states, 19 states have (on average 1.368421052631579) internal successors, (26), 20 states have internal predecessors, (26), 6 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) Second operand 28 states. [2022-02-20 17:24:06,452 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:24:06,452 INFO L93 Difference]: Finished difference Result 28 states and 37 transitions. [2022-02-20 17:24:06,453 INFO L276 IsEmpty]: Start isEmpty. Operand 28 states and 37 transitions. [2022-02-20 17:24:06,453 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 17:24:06,453 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 17:24:06,453 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 17:24:06,453 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 17:24:06,453 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 28 states, 19 states have (on average 1.368421052631579) internal successors, (26), 20 states have internal predecessors, (26), 6 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) [2022-02-20 17:24:06,455 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 28 states to 28 states and 37 transitions. [2022-02-20 17:24:06,456 INFO L78 Accepts]: Start accepts. Automaton has 28 states and 37 transitions. Word has length 18 [2022-02-20 17:24:06,456 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 17:24:06,456 INFO L470 AbstractCegarLoop]: Abstraction has 28 states and 37 transitions. [2022-02-20 17:24:06,457 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 2 states, 2 states have (on average 6.0) internal successors, (12), 2 states have internal predecessors, (12), 2 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-02-20 17:24:06,457 INFO L276 IsEmpty]: Start isEmpty. Operand 28 states and 37 transitions. [2022-02-20 17:24:06,457 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 20 [2022-02-20 17:24:06,457 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 17:24:06,457 INFO L514 BasicCegarLoop]: trace histogram [2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 17:24:06,476 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 17:24:06,658 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 2 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable0 [2022-02-20 17:24:06,658 INFO L402 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 17:24:06,659 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 17:24:06,659 INFO L85 PathProgramCache]: Analyzing trace with hash -1770759922, now seen corresponding path program 1 times [2022-02-20 17:24:06,659 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 17:24:06,660 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [138780518] [2022-02-20 17:24:06,660 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 17:24:06,660 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 17:24:06,672 ERROR L252 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-02-20 17:24:06,672 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [820277933] [2022-02-20 17:24:06,672 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 17:24:06,672 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 17:24:06,673 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 17:24:06,674 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 17:24:06,687 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 17:24:06,723 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 17:24:06,724 INFO L263 TraceCheckSpWp]: Trace formula consists of 69 conjuncts, 3 conjunts are in the unsatisfiable core [2022-02-20 17:24:06,734 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 17:24:06,735 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 17:24:06,879 INFO L290 TraceCheckUtils]: 0: Hoare triple {266#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(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {271#(<= ~counter~0 0)} is VALID [2022-02-20 17:24:06,880 INFO L290 TraceCheckUtils]: 1: Hoare triple {271#(<= ~counter~0 0)} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~nondet5#1, main_#t~post7#1, main_#t~post8#1, main_#t~post6#1, main_~A~0#1, main_~R~0#1, main_~u~0#1, main_~v~0#1, main_~r~0#1;havoc main_~A~0#1;havoc main_~R~0#1;havoc main_~u~0#1;havoc main_~v~0#1;havoc main_~r~0#1;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_~A~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1;assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647;main_~R~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; {271#(<= ~counter~0 0)} is VALID [2022-02-20 17:24:06,881 INFO L272 TraceCheckUtils]: 2: Hoare triple {271#(<= ~counter~0 0)} call assume_abort_if_not((if (main_~R~0#1 - 1) * (main_~R~0#1 - 1) < main_~A~0#1 then 1 else 0)); {271#(<= ~counter~0 0)} is VALID [2022-02-20 17:24:06,882 INFO L290 TraceCheckUtils]: 3: Hoare triple {271#(<= ~counter~0 0)} ~cond := #in~cond; {271#(<= ~counter~0 0)} is VALID [2022-02-20 17:24:06,882 INFO L290 TraceCheckUtils]: 4: Hoare triple {271#(<= ~counter~0 0)} assume !(0 == ~cond); {271#(<= ~counter~0 0)} is VALID [2022-02-20 17:24:06,882 INFO L290 TraceCheckUtils]: 5: Hoare triple {271#(<= ~counter~0 0)} assume true; {271#(<= ~counter~0 0)} is VALID [2022-02-20 17:24:06,885 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {271#(<= ~counter~0 0)} {271#(<= ~counter~0 0)} #87#return; {271#(<= ~counter~0 0)} is VALID [2022-02-20 17:24:06,886 INFO L272 TraceCheckUtils]: 7: Hoare triple {271#(<= ~counter~0 0)} call assume_abort_if_not((if 1 == (if main_~A~0#1 < 0 && 0 != main_~A~0#1 % 2 then main_~A~0#1 % 2 - 2 else main_~A~0#1 % 2) then 1 else 0)); {271#(<= ~counter~0 0)} is VALID [2022-02-20 17:24:06,886 INFO L290 TraceCheckUtils]: 8: Hoare triple {271#(<= ~counter~0 0)} ~cond := #in~cond; {271#(<= ~counter~0 0)} is VALID [2022-02-20 17:24:06,887 INFO L290 TraceCheckUtils]: 9: Hoare triple {271#(<= ~counter~0 0)} assume !(0 == ~cond); {271#(<= ~counter~0 0)} is VALID [2022-02-20 17:24:06,887 INFO L290 TraceCheckUtils]: 10: Hoare triple {271#(<= ~counter~0 0)} assume true; {271#(<= ~counter~0 0)} is VALID [2022-02-20 17:24:06,888 INFO L284 TraceCheckUtils]: 11: Hoare quadruple {271#(<= ~counter~0 0)} {271#(<= ~counter~0 0)} #89#return; {271#(<= ~counter~0 0)} is VALID [2022-02-20 17:24:06,888 INFO L290 TraceCheckUtils]: 12: Hoare triple {271#(<= ~counter~0 0)} main_~u~0#1 := 1 + 2 * main_~R~0#1;main_~v~0#1 := 1;main_~r~0#1 := main_~R~0#1 * main_~R~0#1 - main_~A~0#1; {271#(<= ~counter~0 0)} is VALID [2022-02-20 17:24:06,889 INFO L290 TraceCheckUtils]: 13: Hoare triple {271#(<= ~counter~0 0)} main_#t~post6#1 := ~counter~0;~counter~0 := 1 + main_#t~post6#1; {311#(<= |ULTIMATE.start_main_#t~post6#1| 0)} is VALID [2022-02-20 17:24:06,890 INFO L290 TraceCheckUtils]: 14: Hoare triple {311#(<= |ULTIMATE.start_main_#t~post6#1| 0)} assume !(main_#t~post6#1 < 5);havoc main_#t~post6#1; {267#false} is VALID [2022-02-20 17:24:06,890 INFO L272 TraceCheckUtils]: 15: Hoare triple {267#false} call __VERIFIER_assert((if 4 * main_~A~0#1 == main_~u~0#1 * main_~u~0#1 - main_~v~0#1 * main_~v~0#1 - 2 * main_~u~0#1 + 2 * main_~v~0#1 then 1 else 0)); {267#false} is VALID [2022-02-20 17:24:06,890 INFO L290 TraceCheckUtils]: 16: Hoare triple {267#false} ~cond := #in~cond; {267#false} is VALID [2022-02-20 17:24:06,891 INFO L290 TraceCheckUtils]: 17: Hoare triple {267#false} assume 0 == ~cond; {267#false} is VALID [2022-02-20 17:24:06,891 INFO L290 TraceCheckUtils]: 18: Hoare triple {267#false} assume !false; {267#false} is VALID [2022-02-20 17:24:06,891 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-02-20 17:24:06,891 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 17:24:06,892 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 17:24:06,892 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [138780518] [2022-02-20 17:24:06,892 WARN L317 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-02-20 17:24:06,892 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [820277933] [2022-02-20 17:24:06,893 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [820277933] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 17:24:06,893 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 17:24:06,894 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-02-20 17:24:06,894 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [38603002] [2022-02-20 17:24:06,894 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 17:24:06,896 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 2.75) internal successors, (11), 3 states have internal predecessors, (11), 2 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) Word has length 19 [2022-02-20 17:24:06,896 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 17:24:06,896 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 4 states, 4 states have (on average 2.75) internal successors, (11), 3 states have internal predecessors, (11), 2 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-02-20 17:24:06,909 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 17:24:06,909 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-02-20 17:24:06,910 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 17:24:06,910 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-02-20 17:24:06,910 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-02-20 17:24:06,911 INFO L87 Difference]: Start difference. First operand 28 states and 37 transitions. Second operand has 4 states, 4 states have (on average 2.75) internal successors, (11), 3 states have internal predecessors, (11), 2 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-02-20 17:24:07,000 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:24:07,001 INFO L93 Difference]: Finished difference Result 37 states and 46 transitions. [2022-02-20 17:24:07,001 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-02-20 17:24:07,001 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 2.75) internal successors, (11), 3 states have internal predecessors, (11), 2 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) Word has length 19 [2022-02-20 17:24:07,001 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 17:24:07,002 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 2.75) internal successors, (11), 3 states have internal predecessors, (11), 2 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-02-20 17:24:07,003 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 46 transitions. [2022-02-20 17:24:07,004 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 2.75) internal successors, (11), 3 states have internal predecessors, (11), 2 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-02-20 17:24:07,005 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 46 transitions. [2022-02-20 17:24:07,005 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 46 transitions. [2022-02-20 17:24:07,041 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 17:24:07,043 INFO L225 Difference]: With dead ends: 37 [2022-02-20 17:24:07,043 INFO L226 Difference]: Without dead ends: 30 [2022-02-20 17:24:07,043 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 18 GetRequests, 16 SyntacticMatches, 0 SemanticMatches, 2 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-02-20 17:24:07,044 INFO L933 BasicCegarLoop]: 35 mSDtfsCounter, 0 mSDsluCounter, 56 mSDsCounter, 0 mSdLazyCounter, 10 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 0 SdHoareTripleChecker+Valid, 91 SdHoareTripleChecker+Invalid, 10 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 10 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 17:24:07,045 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [0 Valid, 91 Invalid, 10 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 10 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 17:24:07,045 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 30 states. [2022-02-20 17:24:07,050 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 30 to 30. [2022-02-20 17:24:07,050 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 17:24:07,050 INFO L82 GeneralOperation]: Start isEquivalent. First operand 30 states. Second operand has 30 states, 21 states have (on average 1.3333333333333333) internal successors, (28), 22 states have internal predecessors, (28), 6 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) [2022-02-20 17:24:07,051 INFO L74 IsIncluded]: Start isIncluded. First operand 30 states. Second operand has 30 states, 21 states have (on average 1.3333333333333333) internal successors, (28), 22 states have internal predecessors, (28), 6 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) [2022-02-20 17:24:07,051 INFO L87 Difference]: Start difference. First operand 30 states. Second operand has 30 states, 21 states have (on average 1.3333333333333333) internal successors, (28), 22 states have internal predecessors, (28), 6 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) [2022-02-20 17:24:07,053 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:24:07,053 INFO L93 Difference]: Finished difference Result 30 states and 39 transitions. [2022-02-20 17:24:07,053 INFO L276 IsEmpty]: Start isEmpty. Operand 30 states and 39 transitions. [2022-02-20 17:24:07,053 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 17:24:07,054 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 17:24:07,054 INFO L74 IsIncluded]: Start isIncluded. First operand has 30 states, 21 states have (on average 1.3333333333333333) internal successors, (28), 22 states have internal predecessors, (28), 6 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) Second operand 30 states. [2022-02-20 17:24:07,054 INFO L87 Difference]: Start difference. First operand has 30 states, 21 states have (on average 1.3333333333333333) internal successors, (28), 22 states have internal predecessors, (28), 6 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) Second operand 30 states. [2022-02-20 17:24:07,056 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:24:07,056 INFO L93 Difference]: Finished difference Result 30 states and 39 transitions. [2022-02-20 17:24:07,056 INFO L276 IsEmpty]: Start isEmpty. Operand 30 states and 39 transitions. [2022-02-20 17:24:07,057 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 17:24:07,057 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 17:24:07,057 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 17:24:07,057 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 17:24:07,057 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 30 states, 21 states have (on average 1.3333333333333333) internal successors, (28), 22 states have internal predecessors, (28), 6 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) [2022-02-20 17:24:07,059 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 30 states to 30 states and 39 transitions. [2022-02-20 17:24:07,059 INFO L78 Accepts]: Start accepts. Automaton has 30 states and 39 transitions. Word has length 19 [2022-02-20 17:24:07,059 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 17:24:07,059 INFO L470 AbstractCegarLoop]: Abstraction has 30 states and 39 transitions. [2022-02-20 17:24:07,060 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 4 states have (on average 2.75) internal successors, (11), 3 states have internal predecessors, (11), 2 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-02-20 17:24:07,060 INFO L276 IsEmpty]: Start isEmpty. Operand 30 states and 39 transitions. [2022-02-20 17:24:07,060 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 20 [2022-02-20 17:24:07,060 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 17:24:07,061 INFO L514 BasicCegarLoop]: trace histogram [2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 17:24:07,079 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 17:24:07,275 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,SelfDestructingSolverStorable1 [2022-02-20 17:24:07,276 INFO L402 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 17:24:07,276 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 17:24:07,276 INFO L85 PathProgramCache]: Analyzing trace with hash -1769091626, now seen corresponding path program 1 times [2022-02-20 17:24:07,276 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 17:24:07,276 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1001644196] [2022-02-20 17:24:07,276 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 17:24:07,277 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 17:24:07,286 ERROR L252 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-02-20 17:24:07,287 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [240796308] [2022-02-20 17:24:07,287 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 17:24:07,287 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 17:24:07,287 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 17:24:07,288 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 17:24:07,289 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 17:24:07,321 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 17:24:07,322 INFO L263 TraceCheckSpWp]: Trace formula consists of 69 conjuncts, 9 conjunts are in the unsatisfiable core [2022-02-20 17:24:07,528 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 17:24:07,530 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 17:24:08,176 INFO L290 TraceCheckUtils]: 0: Hoare triple {477#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(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {477#true} is VALID [2022-02-20 17:24:08,176 INFO L290 TraceCheckUtils]: 1: Hoare triple {477#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~nondet5#1, main_#t~post7#1, main_#t~post8#1, main_#t~post6#1, main_~A~0#1, main_~R~0#1, main_~u~0#1, main_~v~0#1, main_~r~0#1;havoc main_~A~0#1;havoc main_~R~0#1;havoc main_~u~0#1;havoc main_~v~0#1;havoc main_~r~0#1;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_~A~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1;assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647;main_~R~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; {477#true} is VALID [2022-02-20 17:24:08,176 INFO L272 TraceCheckUtils]: 2: Hoare triple {477#true} call assume_abort_if_not((if (main_~R~0#1 - 1) * (main_~R~0#1 - 1) < main_~A~0#1 then 1 else 0)); {477#true} is VALID [2022-02-20 17:24:08,176 INFO L290 TraceCheckUtils]: 3: Hoare triple {477#true} ~cond := #in~cond; {477#true} is VALID [2022-02-20 17:24:08,177 INFO L290 TraceCheckUtils]: 4: Hoare triple {477#true} assume !(0 == ~cond); {477#true} is VALID [2022-02-20 17:24:08,177 INFO L290 TraceCheckUtils]: 5: Hoare triple {477#true} assume true; {477#true} is VALID [2022-02-20 17:24:08,177 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {477#true} {477#true} #87#return; {477#true} is VALID [2022-02-20 17:24:08,177 INFO L272 TraceCheckUtils]: 7: Hoare triple {477#true} call assume_abort_if_not((if 1 == (if main_~A~0#1 < 0 && 0 != main_~A~0#1 % 2 then main_~A~0#1 % 2 - 2 else main_~A~0#1 % 2) then 1 else 0)); {477#true} is VALID [2022-02-20 17:24:08,177 INFO L290 TraceCheckUtils]: 8: Hoare triple {477#true} ~cond := #in~cond; {477#true} is VALID [2022-02-20 17:24:08,177 INFO L290 TraceCheckUtils]: 9: Hoare triple {477#true} assume !(0 == ~cond); {477#true} is VALID [2022-02-20 17:24:08,178 INFO L290 TraceCheckUtils]: 10: Hoare triple {477#true} assume true; {477#true} is VALID [2022-02-20 17:24:08,178 INFO L284 TraceCheckUtils]: 11: Hoare quadruple {477#true} {477#true} #89#return; {477#true} is VALID [2022-02-20 17:24:08,792 INFO L290 TraceCheckUtils]: 12: Hoare triple {477#true} main_~u~0#1 := 1 + 2 * main_~R~0#1;main_~v~0#1 := 1;main_~r~0#1 := main_~R~0#1 * main_~R~0#1 - main_~A~0#1; {518#(and (= (mod (+ |ULTIMATE.start_main_~u~0#1| 1) 2) 0) (= |ULTIMATE.start_main_~v~0#1| 1) (= (+ (* (div (+ (- 1) |ULTIMATE.start_main_~u~0#1|) 2) (div (+ (- 1) |ULTIMATE.start_main_~u~0#1|) 2)) (* (- 1) |ULTIMATE.start_main_~A~0#1|)) |ULTIMATE.start_main_~r~0#1|))} is VALID [2022-02-20 17:24:08,793 INFO L290 TraceCheckUtils]: 13: Hoare triple {518#(and (= (mod (+ |ULTIMATE.start_main_~u~0#1| 1) 2) 0) (= |ULTIMATE.start_main_~v~0#1| 1) (= (+ (* (div (+ (- 1) |ULTIMATE.start_main_~u~0#1|) 2) (div (+ (- 1) |ULTIMATE.start_main_~u~0#1|) 2)) (* (- 1) |ULTIMATE.start_main_~A~0#1|)) |ULTIMATE.start_main_~r~0#1|))} main_#t~post6#1 := ~counter~0;~counter~0 := 1 + main_#t~post6#1; {518#(and (= (mod (+ |ULTIMATE.start_main_~u~0#1| 1) 2) 0) (= |ULTIMATE.start_main_~v~0#1| 1) (= (+ (* (div (+ (- 1) |ULTIMATE.start_main_~u~0#1|) 2) (div (+ (- 1) |ULTIMATE.start_main_~u~0#1|) 2)) (* (- 1) |ULTIMATE.start_main_~A~0#1|)) |ULTIMATE.start_main_~r~0#1|))} is VALID [2022-02-20 17:24:08,794 INFO L290 TraceCheckUtils]: 14: Hoare triple {518#(and (= (mod (+ |ULTIMATE.start_main_~u~0#1| 1) 2) 0) (= |ULTIMATE.start_main_~v~0#1| 1) (= (+ (* (div (+ (- 1) |ULTIMATE.start_main_~u~0#1|) 2) (div (+ (- 1) |ULTIMATE.start_main_~u~0#1|) 2)) (* (- 1) |ULTIMATE.start_main_~A~0#1|)) |ULTIMATE.start_main_~r~0#1|))} assume !!(main_#t~post6#1 < 5);havoc main_#t~post6#1; {518#(and (= (mod (+ |ULTIMATE.start_main_~u~0#1| 1) 2) 0) (= |ULTIMATE.start_main_~v~0#1| 1) (= (+ (* (div (+ (- 1) |ULTIMATE.start_main_~u~0#1|) 2) (div (+ (- 1) |ULTIMATE.start_main_~u~0#1|) 2)) (* (- 1) |ULTIMATE.start_main_~A~0#1|)) |ULTIMATE.start_main_~r~0#1|))} is VALID [2022-02-20 17:24:09,076 INFO L272 TraceCheckUtils]: 15: Hoare triple {518#(and (= (mod (+ |ULTIMATE.start_main_~u~0#1| 1) 2) 0) (= |ULTIMATE.start_main_~v~0#1| 1) (= (+ (* (div (+ (- 1) |ULTIMATE.start_main_~u~0#1|) 2) (div (+ (- 1) |ULTIMATE.start_main_~u~0#1|) 2)) (* (- 1) |ULTIMATE.start_main_~A~0#1|)) |ULTIMATE.start_main_~r~0#1|))} call __VERIFIER_assert((if 4 * (main_~A~0#1 + main_~r~0#1) == main_~u~0#1 * main_~u~0#1 - main_~v~0#1 * main_~v~0#1 - 2 * main_~u~0#1 + 2 * main_~v~0#1 then 1 else 0)); {528#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-02-20 17:24:09,077 INFO L290 TraceCheckUtils]: 16: Hoare triple {528#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {532#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-02-20 17:24:09,077 INFO L290 TraceCheckUtils]: 17: Hoare triple {532#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {478#false} is VALID [2022-02-20 17:24:09,078 INFO L290 TraceCheckUtils]: 18: Hoare triple {478#false} assume !false; {478#false} is VALID [2022-02-20 17:24:09,078 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-02-20 17:24:09,078 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 17:24:09,078 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 17:24:09,078 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1001644196] [2022-02-20 17:24:09,078 WARN L317 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-02-20 17:24:09,078 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [240796308] [2022-02-20 17:24:09,078 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [240796308] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 17:24:09,078 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 17:24:09,078 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-02-20 17:24:09,079 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [943579378] [2022-02-20 17:24:09,079 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 17:24:09,079 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 2.2) internal successors, (11), 4 states have internal predecessors, (11), 2 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) Word has length 19 [2022-02-20 17:24:09,080 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 17:24:09,080 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 2.2) internal successors, (11), 4 states have internal predecessors, (11), 2 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-02-20 17:24:11,447 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 16 edges. 15 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-02-20 17:24:11,448 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-02-20 17:24:11,448 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 17:24:11,448 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-02-20 17:24:11,448 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-02-20 17:24:11,448 INFO L87 Difference]: Start difference. First operand 30 states and 39 transitions. Second operand has 5 states, 5 states have (on average 2.2) internal successors, (11), 4 states have internal predecessors, (11), 2 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-02-20 17:24:15,519 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:24:15,519 INFO L93 Difference]: Finished difference Result 49 states and 66 transitions. [2022-02-20 17:24:15,519 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-02-20 17:24:15,519 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 2.2) internal successors, (11), 4 states have internal predecessors, (11), 2 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) Word has length 19 [2022-02-20 17:24:15,519 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 17:24:15,519 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 2.2) internal successors, (11), 4 states have internal predecessors, (11), 2 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-02-20 17:24:15,521 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 64 transitions. [2022-02-20 17:24:15,521 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 2.2) internal successors, (11), 4 states have internal predecessors, (11), 2 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-02-20 17:24:15,522 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 64 transitions. [2022-02-20 17:24:15,522 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 64 transitions. [2022-02-20 17:24:19,370 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 64 edges. 63 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-02-20 17:24:19,372 INFO L225 Difference]: With dead ends: 49 [2022-02-20 17:24:19,372 INFO L226 Difference]: Without dead ends: 47 [2022-02-20 17:24:19,372 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 19 GetRequests, 15 SyntacticMatches, 0 SemanticMatches, 4 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=11, Invalid=19, Unknown=0, NotChecked=0, Total=30 [2022-02-20 17:24:19,373 INFO L933 BasicCegarLoop]: 29 mSDtfsCounter, 16 mSDsluCounter, 81 mSDsCounter, 0 mSdLazyCounter, 46 mSolverCounterSat, 3 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.8s Time, 0 mProtectedPredicate, 0 mProtectedAction, 19 SdHoareTripleChecker+Valid, 110 SdHoareTripleChecker+Invalid, 49 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 3 IncrementalHoareTripleChecker+Valid, 46 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.8s IncrementalHoareTripleChecker+Time [2022-02-20 17:24:19,373 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [19 Valid, 110 Invalid, 49 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [3 Valid, 46 Invalid, 0 Unknown, 0 Unchecked, 1.8s Time] [2022-02-20 17:24:19,373 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 47 states. [2022-02-20 17:24:19,395 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 47 to 46. [2022-02-20 17:24:19,396 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 17:24:19,397 INFO L82 GeneralOperation]: Start isEquivalent. First operand 47 states. Second operand has 46 states, 33 states have (on average 1.393939393939394) internal successors, (46), 34 states have internal predecessors, (46), 9 states have call successors, (9), 3 states have call predecessors, (9), 3 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-02-20 17:24:19,398 INFO L74 IsIncluded]: Start isIncluded. First operand 47 states. Second operand has 46 states, 33 states have (on average 1.393939393939394) internal successors, (46), 34 states have internal predecessors, (46), 9 states have call successors, (9), 3 states have call predecessors, (9), 3 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-02-20 17:24:19,398 INFO L87 Difference]: Start difference. First operand 47 states. Second operand has 46 states, 33 states have (on average 1.393939393939394) internal successors, (46), 34 states have internal predecessors, (46), 9 states have call successors, (9), 3 states have call predecessors, (9), 3 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-02-20 17:24:19,404 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:24:19,404 INFO L93 Difference]: Finished difference Result 47 states and 64 transitions. [2022-02-20 17:24:19,405 INFO L276 IsEmpty]: Start isEmpty. Operand 47 states and 64 transitions. [2022-02-20 17:24:19,405 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 17:24:19,406 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 17:24:19,406 INFO L74 IsIncluded]: Start isIncluded. First operand has 46 states, 33 states have (on average 1.393939393939394) internal successors, (46), 34 states have internal predecessors, (46), 9 states have call successors, (9), 3 states have call predecessors, (9), 3 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) Second operand 47 states. [2022-02-20 17:24:19,407 INFO L87 Difference]: Start difference. First operand has 46 states, 33 states have (on average 1.393939393939394) internal successors, (46), 34 states have internal predecessors, (46), 9 states have call successors, (9), 3 states have call predecessors, (9), 3 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) Second operand 47 states. [2022-02-20 17:24:19,408 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:24:19,410 INFO L93 Difference]: Finished difference Result 47 states and 64 transitions. [2022-02-20 17:24:19,410 INFO L276 IsEmpty]: Start isEmpty. Operand 47 states and 64 transitions. [2022-02-20 17:24:19,411 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 17:24:19,413 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 17:24:19,413 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 17:24:19,413 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 17:24:19,413 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 46 states, 33 states have (on average 1.393939393939394) internal successors, (46), 34 states have internal predecessors, (46), 9 states have call successors, (9), 3 states have call predecessors, (9), 3 states have return successors, (8), 8 states have call predecessors, (8), 8 states have call successors, (8) [2022-02-20 17:24:19,415 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 46 states to 46 states and 63 transitions. [2022-02-20 17:24:19,415 INFO L78 Accepts]: Start accepts. Automaton has 46 states and 63 transitions. Word has length 19 [2022-02-20 17:24:19,415 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 17:24:19,415 INFO L470 AbstractCegarLoop]: Abstraction has 46 states and 63 transitions. [2022-02-20 17:24:19,416 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 2.2) internal successors, (11), 4 states have internal predecessors, (11), 2 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-02-20 17:24:19,416 INFO L276 IsEmpty]: Start isEmpty. Operand 46 states and 63 transitions. [2022-02-20 17:24:19,416 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 26 [2022-02-20 17:24:19,416 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 17:24:19,416 INFO L514 BasicCegarLoop]: trace histogram [2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 17:24:19,432 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Forceful destruction successful, exit code 0 [2022-02-20 17:24:19,617 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable2,4 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 17:24:19,619 INFO L402 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 17:24:19,619 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 17:24:19,620 INFO L85 PathProgramCache]: Analyzing trace with hash -82041861, now seen corresponding path program 1 times [2022-02-20 17:24:19,620 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 17:24:19,620 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1584200109] [2022-02-20 17:24:19,620 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 17:24:19,620 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 17:24:19,631 ERROR L252 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-02-20 17:24:19,631 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1336641440] [2022-02-20 17:24:19,631 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 17:24:19,631 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 17:24:19,631 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 17:24:19,637 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 17:24:19,638 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 17:24:19,676 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 17:24:19,677 INFO L263 TraceCheckSpWp]: Trace formula consists of 80 conjuncts, 10 conjunts are in the unsatisfiable core [2022-02-20 17:24:19,684 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 17:24:19,686 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 17:24:19,843 INFO L290 TraceCheckUtils]: 0: Hoare triple {764#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(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {764#true} is VALID [2022-02-20 17:24:19,844 INFO L290 TraceCheckUtils]: 1: Hoare triple {764#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~nondet5#1, main_#t~post7#1, main_#t~post8#1, main_#t~post6#1, main_~A~0#1, main_~R~0#1, main_~u~0#1, main_~v~0#1, main_~r~0#1;havoc main_~A~0#1;havoc main_~R~0#1;havoc main_~u~0#1;havoc main_~v~0#1;havoc main_~r~0#1;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_~A~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1;assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647;main_~R~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; {764#true} is VALID [2022-02-20 17:24:19,844 INFO L272 TraceCheckUtils]: 2: Hoare triple {764#true} call assume_abort_if_not((if (main_~R~0#1 - 1) * (main_~R~0#1 - 1) < main_~A~0#1 then 1 else 0)); {764#true} is VALID [2022-02-20 17:24:19,844 INFO L290 TraceCheckUtils]: 3: Hoare triple {764#true} ~cond := #in~cond; {764#true} is VALID [2022-02-20 17:24:19,844 INFO L290 TraceCheckUtils]: 4: Hoare triple {764#true} assume !(0 == ~cond); {764#true} is VALID [2022-02-20 17:24:19,844 INFO L290 TraceCheckUtils]: 5: Hoare triple {764#true} assume true; {764#true} is VALID [2022-02-20 17:24:19,846 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {764#true} {764#true} #87#return; {764#true} is VALID [2022-02-20 17:24:19,848 INFO L272 TraceCheckUtils]: 7: Hoare triple {764#true} call assume_abort_if_not((if 1 == (if main_~A~0#1 < 0 && 0 != main_~A~0#1 % 2 then main_~A~0#1 % 2 - 2 else main_~A~0#1 % 2) then 1 else 0)); {764#true} is VALID [2022-02-20 17:24:19,848 INFO L290 TraceCheckUtils]: 8: Hoare triple {764#true} ~cond := #in~cond; {764#true} is VALID [2022-02-20 17:24:19,848 INFO L290 TraceCheckUtils]: 9: Hoare triple {764#true} assume !(0 == ~cond); {764#true} is VALID [2022-02-20 17:24:19,848 INFO L290 TraceCheckUtils]: 10: Hoare triple {764#true} assume true; {764#true} is VALID [2022-02-20 17:24:19,848 INFO L284 TraceCheckUtils]: 11: Hoare quadruple {764#true} {764#true} #89#return; {764#true} is VALID [2022-02-20 17:24:19,849 INFO L290 TraceCheckUtils]: 12: Hoare triple {764#true} main_~u~0#1 := 1 + 2 * main_~R~0#1;main_~v~0#1 := 1;main_~r~0#1 := main_~R~0#1 * main_~R~0#1 - main_~A~0#1; {764#true} is VALID [2022-02-20 17:24:19,849 INFO L290 TraceCheckUtils]: 13: Hoare triple {764#true} main_#t~post6#1 := ~counter~0;~counter~0 := 1 + main_#t~post6#1; {764#true} is VALID [2022-02-20 17:24:19,849 INFO L290 TraceCheckUtils]: 14: Hoare triple {764#true} assume !!(main_#t~post6#1 < 5);havoc main_#t~post6#1; {764#true} is VALID [2022-02-20 17:24:19,849 INFO L272 TraceCheckUtils]: 15: Hoare triple {764#true} call __VERIFIER_assert((if 4 * (main_~A~0#1 + main_~r~0#1) == main_~u~0#1 * main_~u~0#1 - main_~v~0#1 * main_~v~0#1 - 2 * main_~u~0#1 + 2 * main_~v~0#1 then 1 else 0)); {764#true} is VALID [2022-02-20 17:24:19,850 INFO L290 TraceCheckUtils]: 16: Hoare triple {764#true} ~cond := #in~cond; {817#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-02-20 17:24:19,855 INFO L290 TraceCheckUtils]: 17: Hoare triple {817#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {821#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-02-20 17:24:19,855 INFO L290 TraceCheckUtils]: 18: Hoare triple {821#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {821#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-02-20 17:24:19,856 INFO L284 TraceCheckUtils]: 19: Hoare quadruple {821#(not (= |__VERIFIER_assert_#in~cond| 0))} {764#true} #91#return; {828#(= (+ (* |ULTIMATE.start_main_~A~0#1| 4) (* |ULTIMATE.start_main_~r~0#1| 4) (* |ULTIMATE.start_main_~v~0#1| |ULTIMATE.start_main_~v~0#1|) (* 2 |ULTIMATE.start_main_~u~0#1|)) (+ (* 2 |ULTIMATE.start_main_~v~0#1|) (* |ULTIMATE.start_main_~u~0#1| |ULTIMATE.start_main_~u~0#1|)))} is VALID [2022-02-20 17:24:19,857 INFO L290 TraceCheckUtils]: 20: Hoare triple {828#(= (+ (* |ULTIMATE.start_main_~A~0#1| 4) (* |ULTIMATE.start_main_~r~0#1| 4) (* |ULTIMATE.start_main_~v~0#1| |ULTIMATE.start_main_~v~0#1|) (* 2 |ULTIMATE.start_main_~u~0#1|)) (+ (* 2 |ULTIMATE.start_main_~v~0#1|) (* |ULTIMATE.start_main_~u~0#1| |ULTIMATE.start_main_~u~0#1|)))} assume !(0 != main_~r~0#1); {832#(= (+ (* |ULTIMATE.start_main_~A~0#1| 4) (* |ULTIMATE.start_main_~v~0#1| |ULTIMATE.start_main_~v~0#1|) (* 2 |ULTIMATE.start_main_~u~0#1|)) (+ (* 2 |ULTIMATE.start_main_~v~0#1|) (* |ULTIMATE.start_main_~u~0#1| |ULTIMATE.start_main_~u~0#1|)))} is VALID [2022-02-20 17:24:19,858 INFO L272 TraceCheckUtils]: 21: Hoare triple {832#(= (+ (* |ULTIMATE.start_main_~A~0#1| 4) (* |ULTIMATE.start_main_~v~0#1| |ULTIMATE.start_main_~v~0#1|) (* 2 |ULTIMATE.start_main_~u~0#1|)) (+ (* 2 |ULTIMATE.start_main_~v~0#1|) (* |ULTIMATE.start_main_~u~0#1| |ULTIMATE.start_main_~u~0#1|)))} call __VERIFIER_assert((if 4 * main_~A~0#1 == main_~u~0#1 * main_~u~0#1 - main_~v~0#1 * main_~v~0#1 - 2 * main_~u~0#1 + 2 * main_~v~0#1 then 1 else 0)); {836#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-02-20 17:24:19,859 INFO L290 TraceCheckUtils]: 22: Hoare triple {836#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {840#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-02-20 17:24:19,859 INFO L290 TraceCheckUtils]: 23: Hoare triple {840#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {765#false} is VALID [2022-02-20 17:24:19,859 INFO L290 TraceCheckUtils]: 24: Hoare triple {765#false} assume !false; {765#false} is VALID [2022-02-20 17:24:19,860 INFO L134 CoverageAnalysis]: Checked inductivity of 6 backedges. 1 proven. 1 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-02-20 17:24:19,860 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 17:24:20,207 INFO L290 TraceCheckUtils]: 24: Hoare triple {765#false} assume !false; {765#false} is VALID [2022-02-20 17:24:20,208 INFO L290 TraceCheckUtils]: 23: Hoare triple {840#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {765#false} is VALID [2022-02-20 17:24:20,208 INFO L290 TraceCheckUtils]: 22: Hoare triple {836#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {840#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-02-20 17:24:20,209 INFO L272 TraceCheckUtils]: 21: Hoare triple {832#(= (+ (* |ULTIMATE.start_main_~A~0#1| 4) (* |ULTIMATE.start_main_~v~0#1| |ULTIMATE.start_main_~v~0#1|) (* 2 |ULTIMATE.start_main_~u~0#1|)) (+ (* 2 |ULTIMATE.start_main_~v~0#1|) (* |ULTIMATE.start_main_~u~0#1| |ULTIMATE.start_main_~u~0#1|)))} call __VERIFIER_assert((if 4 * main_~A~0#1 == main_~u~0#1 * main_~u~0#1 - main_~v~0#1 * main_~v~0#1 - 2 * main_~u~0#1 + 2 * main_~v~0#1 then 1 else 0)); {836#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-02-20 17:24:20,209 INFO L290 TraceCheckUtils]: 20: Hoare triple {859#(or (not (= |ULTIMATE.start_main_~r~0#1| 0)) (= (+ (* |ULTIMATE.start_main_~A~0#1| 4) (* |ULTIMATE.start_main_~v~0#1| |ULTIMATE.start_main_~v~0#1|) (* 2 |ULTIMATE.start_main_~u~0#1|)) (+ (* 2 |ULTIMATE.start_main_~v~0#1|) (* |ULTIMATE.start_main_~u~0#1| |ULTIMATE.start_main_~u~0#1|))))} assume !(0 != main_~r~0#1); {832#(= (+ (* |ULTIMATE.start_main_~A~0#1| 4) (* |ULTIMATE.start_main_~v~0#1| |ULTIMATE.start_main_~v~0#1|) (* 2 |ULTIMATE.start_main_~u~0#1|)) (+ (* 2 |ULTIMATE.start_main_~v~0#1|) (* |ULTIMATE.start_main_~u~0#1| |ULTIMATE.start_main_~u~0#1|)))} is VALID [2022-02-20 17:24:20,210 INFO L284 TraceCheckUtils]: 19: Hoare quadruple {821#(not (= |__VERIFIER_assert_#in~cond| 0))} {764#true} #91#return; {859#(or (not (= |ULTIMATE.start_main_~r~0#1| 0)) (= (+ (* |ULTIMATE.start_main_~A~0#1| 4) (* |ULTIMATE.start_main_~v~0#1| |ULTIMATE.start_main_~v~0#1|) (* 2 |ULTIMATE.start_main_~u~0#1|)) (+ (* 2 |ULTIMATE.start_main_~v~0#1|) (* |ULTIMATE.start_main_~u~0#1| |ULTIMATE.start_main_~u~0#1|))))} is VALID [2022-02-20 17:24:20,210 INFO L290 TraceCheckUtils]: 18: Hoare triple {821#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {821#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-02-20 17:24:20,211 INFO L290 TraceCheckUtils]: 17: Hoare triple {872#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {821#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-02-20 17:24:20,211 INFO L290 TraceCheckUtils]: 16: Hoare triple {764#true} ~cond := #in~cond; {872#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-02-20 17:24:20,211 INFO L272 TraceCheckUtils]: 15: Hoare triple {764#true} call __VERIFIER_assert((if 4 * (main_~A~0#1 + main_~r~0#1) == main_~u~0#1 * main_~u~0#1 - main_~v~0#1 * main_~v~0#1 - 2 * main_~u~0#1 + 2 * main_~v~0#1 then 1 else 0)); {764#true} is VALID [2022-02-20 17:24:20,212 INFO L290 TraceCheckUtils]: 14: Hoare triple {764#true} assume !!(main_#t~post6#1 < 5);havoc main_#t~post6#1; {764#true} is VALID [2022-02-20 17:24:20,212 INFO L290 TraceCheckUtils]: 13: Hoare triple {764#true} main_#t~post6#1 := ~counter~0;~counter~0 := 1 + main_#t~post6#1; {764#true} is VALID [2022-02-20 17:24:20,212 INFO L290 TraceCheckUtils]: 12: Hoare triple {764#true} main_~u~0#1 := 1 + 2 * main_~R~0#1;main_~v~0#1 := 1;main_~r~0#1 := main_~R~0#1 * main_~R~0#1 - main_~A~0#1; {764#true} is VALID [2022-02-20 17:24:20,212 INFO L284 TraceCheckUtils]: 11: Hoare quadruple {764#true} {764#true} #89#return; {764#true} is VALID [2022-02-20 17:24:20,212 INFO L290 TraceCheckUtils]: 10: Hoare triple {764#true} assume true; {764#true} is VALID [2022-02-20 17:24:20,212 INFO L290 TraceCheckUtils]: 9: Hoare triple {764#true} assume !(0 == ~cond); {764#true} is VALID [2022-02-20 17:24:20,213 INFO L290 TraceCheckUtils]: 8: Hoare triple {764#true} ~cond := #in~cond; {764#true} is VALID [2022-02-20 17:24:20,213 INFO L272 TraceCheckUtils]: 7: Hoare triple {764#true} call assume_abort_if_not((if 1 == (if main_~A~0#1 < 0 && 0 != main_~A~0#1 % 2 then main_~A~0#1 % 2 - 2 else main_~A~0#1 % 2) then 1 else 0)); {764#true} is VALID [2022-02-20 17:24:20,213 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {764#true} {764#true} #87#return; {764#true} is VALID [2022-02-20 17:24:20,213 INFO L290 TraceCheckUtils]: 5: Hoare triple {764#true} assume true; {764#true} is VALID [2022-02-20 17:24:20,213 INFO L290 TraceCheckUtils]: 4: Hoare triple {764#true} assume !(0 == ~cond); {764#true} is VALID [2022-02-20 17:24:20,213 INFO L290 TraceCheckUtils]: 3: Hoare triple {764#true} ~cond := #in~cond; {764#true} is VALID [2022-02-20 17:24:20,213 INFO L272 TraceCheckUtils]: 2: Hoare triple {764#true} call assume_abort_if_not((if (main_~R~0#1 - 1) * (main_~R~0#1 - 1) < main_~A~0#1 then 1 else 0)); {764#true} is VALID [2022-02-20 17:24:20,214 INFO L290 TraceCheckUtils]: 1: Hoare triple {764#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~nondet5#1, main_#t~post7#1, main_#t~post8#1, main_#t~post6#1, main_~A~0#1, main_~R~0#1, main_~u~0#1, main_~v~0#1, main_~r~0#1;havoc main_~A~0#1;havoc main_~R~0#1;havoc main_~u~0#1;havoc main_~v~0#1;havoc main_~r~0#1;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_~A~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1;assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647;main_~R~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; {764#true} is VALID [2022-02-20 17:24:20,214 INFO L290 TraceCheckUtils]: 0: Hoare triple {764#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(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {764#true} is VALID [2022-02-20 17:24:20,214 INFO L134 CoverageAnalysis]: Checked inductivity of 6 backedges. 1 proven. 1 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-02-20 17:24:20,214 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 17:24:20,214 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1584200109] [2022-02-20 17:24:20,215 WARN L317 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-02-20 17:24:20,215 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1336641440] [2022-02-20 17:24:20,215 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1336641440] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 17:24:20,215 INFO L191 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-02-20 17:24:20,215 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [8, 8] total 10 [2022-02-20 17:24:20,215 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [2053849774] [2022-02-20 17:24:20,215 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-02-20 17:24:20,216 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 9 states have (on average 2.0) internal successors, (18), 7 states have internal predecessors, (18), 2 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (4), 3 states have call predecessors, (4), 1 states have call successors, (4) Word has length 25 [2022-02-20 17:24:20,216 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 17:24:20,216 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 10 states, 9 states have (on average 2.0) internal successors, (18), 7 states have internal predecessors, (18), 2 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (4), 3 states have call predecessors, (4), 1 states have call successors, (4) [2022-02-20 17:24:20,237 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 26 edges. 26 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 17:24:20,238 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 10 states [2022-02-20 17:24:20,238 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 17:24:20,238 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 10 interpolants. [2022-02-20 17:24:20,238 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=23, Invalid=67, Unknown=0, NotChecked=0, Total=90 [2022-02-20 17:24:20,239 INFO L87 Difference]: Start difference. First operand 46 states and 63 transitions. Second operand has 10 states, 9 states have (on average 2.0) internal successors, (18), 7 states have internal predecessors, (18), 2 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (4), 3 states have call predecessors, (4), 1 states have call successors, (4) [2022-02-20 17:24:20,539 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:24:20,539 INFO L93 Difference]: Finished difference Result 53 states and 69 transitions. [2022-02-20 17:24:20,539 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-02-20 17:24:20,540 INFO L78 Accepts]: Start accepts. Automaton has has 10 states, 9 states have (on average 2.0) internal successors, (18), 7 states have internal predecessors, (18), 2 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (4), 3 states have call predecessors, (4), 1 states have call successors, (4) Word has length 25 [2022-02-20 17:24:20,540 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 17:24:20,540 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 9 states have (on average 2.0) internal successors, (18), 7 states have internal predecessors, (18), 2 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (4), 3 states have call predecessors, (4), 1 states have call successors, (4) [2022-02-20 17:24:20,543 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 43 transitions. [2022-02-20 17:24:20,544 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 10 states, 9 states have (on average 2.0) internal successors, (18), 7 states have internal predecessors, (18), 2 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (4), 3 states have call predecessors, (4), 1 states have call successors, (4) [2022-02-20 17:24:20,547 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 43 transitions. [2022-02-20 17:24:20,547 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 8 states and 43 transitions. [2022-02-20 17:24:20,584 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 43 edges. 43 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 17:24:20,587 INFO L225 Difference]: With dead ends: 53 [2022-02-20 17:24:20,587 INFO L226 Difference]: Without dead ends: 48 [2022-02-20 17:24:20,589 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 51 GetRequests, 39 SyntacticMatches, 1 SemanticMatches, 11 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 10 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=41, Invalid=115, Unknown=0, NotChecked=0, Total=156 [2022-02-20 17:24:20,592 INFO L933 BasicCegarLoop]: 25 mSDtfsCounter, 37 mSDsluCounter, 89 mSDsCounter, 0 mSdLazyCounter, 65 mSolverCounterSat, 16 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 39 SdHoareTripleChecker+Valid, 114 SdHoareTripleChecker+Invalid, 81 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 16 IncrementalHoareTripleChecker+Valid, 65 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 17:24:20,593 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [39 Valid, 114 Invalid, 81 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [16 Valid, 65 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 17:24:20,594 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 48 states. [2022-02-20 17:24:20,604 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 48 to 32. [2022-02-20 17:24:20,604 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 17:24:20,604 INFO L82 GeneralOperation]: Start isEquivalent. First operand 48 states. Second operand has 32 states, 23 states have (on average 1.2173913043478262) internal successors, (28), 23 states have internal predecessors, (28), 6 states have call successors, (6), 3 states have call predecessors, (6), 2 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) [2022-02-20 17:24:20,605 INFO L74 IsIncluded]: Start isIncluded. First operand 48 states. Second operand has 32 states, 23 states have (on average 1.2173913043478262) internal successors, (28), 23 states have internal predecessors, (28), 6 states have call successors, (6), 3 states have call predecessors, (6), 2 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) [2022-02-20 17:24:20,605 INFO L87 Difference]: Start difference. First operand 48 states. Second operand has 32 states, 23 states have (on average 1.2173913043478262) internal successors, (28), 23 states have internal predecessors, (28), 6 states have call successors, (6), 3 states have call predecessors, (6), 2 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) [2022-02-20 17:24:20,607 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:24:20,607 INFO L93 Difference]: Finished difference Result 48 states and 62 transitions. [2022-02-20 17:24:20,607 INFO L276 IsEmpty]: Start isEmpty. Operand 48 states and 62 transitions. [2022-02-20 17:24:20,609 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 17:24:20,610 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 17:24:20,610 INFO L74 IsIncluded]: Start isIncluded. First operand has 32 states, 23 states have (on average 1.2173913043478262) internal successors, (28), 23 states have internal predecessors, (28), 6 states have call successors, (6), 3 states have call predecessors, (6), 2 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) Second operand 48 states. [2022-02-20 17:24:20,610 INFO L87 Difference]: Start difference. First operand has 32 states, 23 states have (on average 1.2173913043478262) internal successors, (28), 23 states have internal predecessors, (28), 6 states have call successors, (6), 3 states have call predecessors, (6), 2 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) Second operand 48 states. [2022-02-20 17:24:20,613 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:24:20,613 INFO L93 Difference]: Finished difference Result 48 states and 62 transitions. [2022-02-20 17:24:20,613 INFO L276 IsEmpty]: Start isEmpty. Operand 48 states and 62 transitions. [2022-02-20 17:24:20,614 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 17:24:20,614 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 17:24:20,614 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 17:24:20,614 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 17:24:20,615 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 32 states, 23 states have (on average 1.2173913043478262) internal successors, (28), 23 states have internal predecessors, (28), 6 states have call successors, (6), 3 states have call predecessors, (6), 2 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) [2022-02-20 17:24:20,617 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 32 states to 32 states and 39 transitions. [2022-02-20 17:24:20,617 INFO L78 Accepts]: Start accepts. Automaton has 32 states and 39 transitions. Word has length 25 [2022-02-20 17:24:20,617 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 17:24:20,618 INFO L470 AbstractCegarLoop]: Abstraction has 32 states and 39 transitions. [2022-02-20 17:24:20,618 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 10 states, 9 states have (on average 2.0) internal successors, (18), 7 states have internal predecessors, (18), 2 states have call successors, (4), 2 states have call predecessors, (4), 2 states have return successors, (4), 3 states have call predecessors, (4), 1 states have call successors, (4) [2022-02-20 17:24:20,618 INFO L276 IsEmpty]: Start isEmpty. Operand 32 states and 39 transitions. [2022-02-20 17:24:20,619 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 32 [2022-02-20 17:24:20,619 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 17:24:20,619 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, 1, 1, 1, 1] [2022-02-20 17:24:20,643 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 17:24:20,836 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3,5 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 17:24:20,836 INFO L402 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 17:24:20,836 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 17:24:20,837 INFO L85 PathProgramCache]: Analyzing trace with hash -1145481658, now seen corresponding path program 1 times [2022-02-20 17:24:20,837 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 17:24:20,837 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1522383649] [2022-02-20 17:24:20,837 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 17:24:20,837 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 17:24:20,862 ERROR L252 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-02-20 17:24:20,862 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [117910845] [2022-02-20 17:24:20,862 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 17:24:20,862 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 17:24:20,862 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 17:24:20,863 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 17:24:20,864 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 17:24:20,897 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 17:24:20,898 INFO L263 TraceCheckSpWp]: Trace formula consists of 94 conjuncts, 5 conjunts are in the unsatisfiable core [2022-02-20 17:24:20,905 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 17:24:20,906 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 17:24:21,029 INFO L290 TraceCheckUtils]: 0: Hoare triple {1138#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(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {1143#(<= ~counter~0 0)} is VALID [2022-02-20 17:24:21,029 INFO L290 TraceCheckUtils]: 1: Hoare triple {1143#(<= ~counter~0 0)} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~nondet5#1, main_#t~post7#1, main_#t~post8#1, main_#t~post6#1, main_~A~0#1, main_~R~0#1, main_~u~0#1, main_~v~0#1, main_~r~0#1;havoc main_~A~0#1;havoc main_~R~0#1;havoc main_~u~0#1;havoc main_~v~0#1;havoc main_~r~0#1;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_~A~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1;assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647;main_~R~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; {1143#(<= ~counter~0 0)} is VALID [2022-02-20 17:24:21,030 INFO L272 TraceCheckUtils]: 2: Hoare triple {1143#(<= ~counter~0 0)} call assume_abort_if_not((if (main_~R~0#1 - 1) * (main_~R~0#1 - 1) < main_~A~0#1 then 1 else 0)); {1143#(<= ~counter~0 0)} is VALID [2022-02-20 17:24:21,030 INFO L290 TraceCheckUtils]: 3: Hoare triple {1143#(<= ~counter~0 0)} ~cond := #in~cond; {1143#(<= ~counter~0 0)} is VALID [2022-02-20 17:24:21,031 INFO L290 TraceCheckUtils]: 4: Hoare triple {1143#(<= ~counter~0 0)} assume !(0 == ~cond); {1143#(<= ~counter~0 0)} is VALID [2022-02-20 17:24:21,031 INFO L290 TraceCheckUtils]: 5: Hoare triple {1143#(<= ~counter~0 0)} assume true; {1143#(<= ~counter~0 0)} is VALID [2022-02-20 17:24:21,032 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {1143#(<= ~counter~0 0)} {1143#(<= ~counter~0 0)} #87#return; {1143#(<= ~counter~0 0)} is VALID [2022-02-20 17:24:21,032 INFO L272 TraceCheckUtils]: 7: Hoare triple {1143#(<= ~counter~0 0)} call assume_abort_if_not((if 1 == (if main_~A~0#1 < 0 && 0 != main_~A~0#1 % 2 then main_~A~0#1 % 2 - 2 else main_~A~0#1 % 2) then 1 else 0)); {1143#(<= ~counter~0 0)} is VALID [2022-02-20 17:24:21,033 INFO L290 TraceCheckUtils]: 8: Hoare triple {1143#(<= ~counter~0 0)} ~cond := #in~cond; {1143#(<= ~counter~0 0)} is VALID [2022-02-20 17:24:21,033 INFO L290 TraceCheckUtils]: 9: Hoare triple {1143#(<= ~counter~0 0)} assume !(0 == ~cond); {1143#(<= ~counter~0 0)} is VALID [2022-02-20 17:24:21,033 INFO L290 TraceCheckUtils]: 10: Hoare triple {1143#(<= ~counter~0 0)} assume true; {1143#(<= ~counter~0 0)} is VALID [2022-02-20 17:24:21,034 INFO L284 TraceCheckUtils]: 11: Hoare quadruple {1143#(<= ~counter~0 0)} {1143#(<= ~counter~0 0)} #89#return; {1143#(<= ~counter~0 0)} is VALID [2022-02-20 17:24:21,034 INFO L290 TraceCheckUtils]: 12: Hoare triple {1143#(<= ~counter~0 0)} main_~u~0#1 := 1 + 2 * main_~R~0#1;main_~v~0#1 := 1;main_~r~0#1 := main_~R~0#1 * main_~R~0#1 - main_~A~0#1; {1143#(<= ~counter~0 0)} is VALID [2022-02-20 17:24:21,035 INFO L290 TraceCheckUtils]: 13: Hoare triple {1143#(<= ~counter~0 0)} main_#t~post6#1 := ~counter~0;~counter~0 := 1 + main_#t~post6#1; {1183#(<= ~counter~0 1)} is VALID [2022-02-20 17:24:21,035 INFO L290 TraceCheckUtils]: 14: Hoare triple {1183#(<= ~counter~0 1)} assume !!(main_#t~post6#1 < 5);havoc main_#t~post6#1; {1183#(<= ~counter~0 1)} is VALID [2022-02-20 17:24:21,036 INFO L272 TraceCheckUtils]: 15: Hoare triple {1183#(<= ~counter~0 1)} call __VERIFIER_assert((if 4 * (main_~A~0#1 + main_~r~0#1) == main_~u~0#1 * main_~u~0#1 - main_~v~0#1 * main_~v~0#1 - 2 * main_~u~0#1 + 2 * main_~v~0#1 then 1 else 0)); {1183#(<= ~counter~0 1)} is VALID [2022-02-20 17:24:21,037 INFO L290 TraceCheckUtils]: 16: Hoare triple {1183#(<= ~counter~0 1)} ~cond := #in~cond; {1183#(<= ~counter~0 1)} is VALID [2022-02-20 17:24:21,037 INFO L290 TraceCheckUtils]: 17: Hoare triple {1183#(<= ~counter~0 1)} assume !(0 == ~cond); {1183#(<= ~counter~0 1)} is VALID [2022-02-20 17:24:21,037 INFO L290 TraceCheckUtils]: 18: Hoare triple {1183#(<= ~counter~0 1)} assume true; {1183#(<= ~counter~0 1)} is VALID [2022-02-20 17:24:21,038 INFO L284 TraceCheckUtils]: 19: Hoare quadruple {1183#(<= ~counter~0 1)} {1183#(<= ~counter~0 1)} #91#return; {1183#(<= ~counter~0 1)} is VALID [2022-02-20 17:24:21,038 INFO L290 TraceCheckUtils]: 20: Hoare triple {1183#(<= ~counter~0 1)} assume !!(0 != main_~r~0#1); {1183#(<= ~counter~0 1)} is VALID [2022-02-20 17:24:21,039 INFO L290 TraceCheckUtils]: 21: Hoare triple {1183#(<= ~counter~0 1)} main_#t~post7#1 := ~counter~0;~counter~0 := 1 + main_#t~post7#1; {1208#(<= |ULTIMATE.start_main_#t~post7#1| 1)} is VALID [2022-02-20 17:24:21,039 INFO L290 TraceCheckUtils]: 22: Hoare triple {1208#(<= |ULTIMATE.start_main_#t~post7#1| 1)} assume !(main_#t~post7#1 < 5);havoc main_#t~post7#1; {1139#false} is VALID [2022-02-20 17:24:21,039 INFO L290 TraceCheckUtils]: 23: Hoare triple {1139#false} main_#t~post8#1 := ~counter~0;~counter~0 := 1 + main_#t~post8#1; {1139#false} is VALID [2022-02-20 17:24:21,040 INFO L290 TraceCheckUtils]: 24: Hoare triple {1139#false} assume !(main_#t~post8#1 < 5);havoc main_#t~post8#1; {1139#false} is VALID [2022-02-20 17:24:21,040 INFO L290 TraceCheckUtils]: 25: Hoare triple {1139#false} main_#t~post6#1 := ~counter~0;~counter~0 := 1 + main_#t~post6#1; {1139#false} is VALID [2022-02-20 17:24:21,040 INFO L290 TraceCheckUtils]: 26: Hoare triple {1139#false} assume !(main_#t~post6#1 < 5);havoc main_#t~post6#1; {1139#false} is VALID [2022-02-20 17:24:21,040 INFO L272 TraceCheckUtils]: 27: Hoare triple {1139#false} call __VERIFIER_assert((if 4 * main_~A~0#1 == main_~u~0#1 * main_~u~0#1 - main_~v~0#1 * main_~v~0#1 - 2 * main_~u~0#1 + 2 * main_~v~0#1 then 1 else 0)); {1139#false} is VALID [2022-02-20 17:24:21,040 INFO L290 TraceCheckUtils]: 28: Hoare triple {1139#false} ~cond := #in~cond; {1139#false} is VALID [2022-02-20 17:24:21,040 INFO L290 TraceCheckUtils]: 29: Hoare triple {1139#false} assume 0 == ~cond; {1139#false} is VALID [2022-02-20 17:24:21,040 INFO L290 TraceCheckUtils]: 30: Hoare triple {1139#false} assume !false; {1139#false} is VALID [2022-02-20 17:24:21,041 INFO L134 CoverageAnalysis]: Checked inductivity of 8 backedges. 4 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-02-20 17:24:21,041 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 17:24:21,041 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 17:24:21,041 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1522383649] [2022-02-20 17:24:21,041 WARN L317 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-02-20 17:24:21,041 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [117910845] [2022-02-20 17:24:21,041 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [117910845] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 17:24:21,041 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 17:24:21,041 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-02-20 17:24:21,042 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1039642322] [2022-02-20 17:24:21,042 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 17:24:21,042 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 4.2) internal successors, (21), 4 states have internal predecessors, (21), 3 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) Word has length 31 [2022-02-20 17:24:21,042 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 17:24:21,043 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 4.2) internal successors, (21), 4 states have internal predecessors, (21), 3 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-02-20 17:24:21,066 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 28 edges. 28 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 17:24:21,067 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-02-20 17:24:21,067 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 17:24:21,067 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-02-20 17:24:21,067 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2022-02-20 17:24:21,068 INFO L87 Difference]: Start difference. First operand 32 states and 39 transitions. Second operand has 5 states, 5 states have (on average 4.2) internal successors, (21), 4 states have internal predecessors, (21), 3 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-02-20 17:24:21,149 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:24:21,150 INFO L93 Difference]: Finished difference Result 61 states and 75 transitions. [2022-02-20 17:24:21,150 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-02-20 17:24:21,150 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 4.2) internal successors, (21), 4 states have internal predecessors, (21), 3 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) Word has length 31 [2022-02-20 17:24:21,150 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 17:24:21,151 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 4.2) internal successors, (21), 4 states have internal predecessors, (21), 3 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-02-20 17:24:21,152 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 73 transitions. [2022-02-20 17:24:21,152 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 4.2) internal successors, (21), 4 states have internal predecessors, (21), 3 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-02-20 17:24:21,154 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 73 transitions. [2022-02-20 17:24:21,154 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 5 states and 73 transitions. [2022-02-20 17:24:21,202 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 73 edges. 73 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 17:24:21,203 INFO L225 Difference]: With dead ends: 61 [2022-02-20 17:24:21,203 INFO L226 Difference]: Without dead ends: 40 [2022-02-20 17:24:21,204 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 30 GetRequests, 27 SyntacticMatches, 0 SemanticMatches, 3 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 1 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=8, Invalid=12, Unknown=0, NotChecked=0, Total=20 [2022-02-20 17:24:21,204 INFO L933 BasicCegarLoop]: 34 mSDtfsCounter, 5 mSDsluCounter, 59 mSDsCounter, 0 mSdLazyCounter, 15 mSolverCounterSat, 5 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 5 SdHoareTripleChecker+Valid, 93 SdHoareTripleChecker+Invalid, 20 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 5 IncrementalHoareTripleChecker+Valid, 15 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 17:24:21,204 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [5 Valid, 93 Invalid, 20 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [5 Valid, 15 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 17:24:21,205 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 40 states. [2022-02-20 17:24:21,228 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 40 to 40. [2022-02-20 17:24:21,228 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 17:24:21,229 INFO L82 GeneralOperation]: Start isEquivalent. First operand 40 states. Second operand has 40 states, 29 states have (on average 1.1724137931034482) internal successors, (34), 29 states have internal predecessors, (34), 7 states have call successors, (7), 4 states have call predecessors, (7), 3 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-02-20 17:24:21,229 INFO L74 IsIncluded]: Start isIncluded. First operand 40 states. Second operand has 40 states, 29 states have (on average 1.1724137931034482) internal successors, (34), 29 states have internal predecessors, (34), 7 states have call successors, (7), 4 states have call predecessors, (7), 3 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-02-20 17:24:21,229 INFO L87 Difference]: Start difference. First operand 40 states. Second operand has 40 states, 29 states have (on average 1.1724137931034482) internal successors, (34), 29 states have internal predecessors, (34), 7 states have call successors, (7), 4 states have call predecessors, (7), 3 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-02-20 17:24:21,230 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:24:21,230 INFO L93 Difference]: Finished difference Result 40 states and 47 transitions. [2022-02-20 17:24:21,230 INFO L276 IsEmpty]: Start isEmpty. Operand 40 states and 47 transitions. [2022-02-20 17:24:21,231 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 17:24:21,231 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 17:24:21,231 INFO L74 IsIncluded]: Start isIncluded. First operand has 40 states, 29 states have (on average 1.1724137931034482) internal successors, (34), 29 states have internal predecessors, (34), 7 states have call successors, (7), 4 states have call predecessors, (7), 3 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) Second operand 40 states. [2022-02-20 17:24:21,231 INFO L87 Difference]: Start difference. First operand has 40 states, 29 states have (on average 1.1724137931034482) internal successors, (34), 29 states have internal predecessors, (34), 7 states have call successors, (7), 4 states have call predecessors, (7), 3 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) Second operand 40 states. [2022-02-20 17:24:21,232 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:24:21,232 INFO L93 Difference]: Finished difference Result 40 states and 47 transitions. [2022-02-20 17:24:21,233 INFO L276 IsEmpty]: Start isEmpty. Operand 40 states and 47 transitions. [2022-02-20 17:24:21,233 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 17:24:21,233 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 17:24:21,233 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 17:24:21,233 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 17:24:21,233 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 40 states, 29 states have (on average 1.1724137931034482) internal successors, (34), 29 states have internal predecessors, (34), 7 states have call successors, (7), 4 states have call predecessors, (7), 3 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-02-20 17:24:21,234 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 40 states to 40 states and 47 transitions. [2022-02-20 17:24:21,234 INFO L78 Accepts]: Start accepts. Automaton has 40 states and 47 transitions. Word has length 31 [2022-02-20 17:24:21,235 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 17:24:21,235 INFO L470 AbstractCegarLoop]: Abstraction has 40 states and 47 transitions. [2022-02-20 17:24:21,235 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 4.2) internal successors, (21), 4 states have internal predecessors, (21), 3 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-02-20 17:24:21,235 INFO L276 IsEmpty]: Start isEmpty. Operand 40 states and 47 transitions. [2022-02-20 17:24:21,235 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 38 [2022-02-20 17:24:21,235 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 17:24:21,236 INFO L514 BasicCegarLoop]: trace histogram [3, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 17:24:21,251 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 17:24:21,443 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4,6 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 17:24:21,443 INFO L402 AbstractCegarLoop]: === Iteration 6 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 17:24:21,444 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 17:24:21,444 INFO L85 PathProgramCache]: Analyzing trace with hash -1102972225, now seen corresponding path program 1 times [2022-02-20 17:24:21,444 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 17:24:21,444 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2099791826] [2022-02-20 17:24:21,444 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 17:24:21,444 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 17:24:21,458 ERROR L252 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-02-20 17:24:21,459 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [287835178] [2022-02-20 17:24:21,459 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 17:24:21,459 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 17:24:21,460 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 17:24:21,460 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 17:24:21,462 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 17:24:21,492 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 17:24:21,492 INFO L263 TraceCheckSpWp]: Trace formula consists of 104 conjuncts, 7 conjunts are in the unsatisfiable core [2022-02-20 17:24:21,503 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 17:24:21,504 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 17:24:21,637 INFO L290 TraceCheckUtils]: 0: Hoare triple {1454#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(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {1459#(<= ~counter~0 0)} is VALID [2022-02-20 17:24:21,638 INFO L290 TraceCheckUtils]: 1: Hoare triple {1459#(<= ~counter~0 0)} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~nondet5#1, main_#t~post7#1, main_#t~post8#1, main_#t~post6#1, main_~A~0#1, main_~R~0#1, main_~u~0#1, main_~v~0#1, main_~r~0#1;havoc main_~A~0#1;havoc main_~R~0#1;havoc main_~u~0#1;havoc main_~v~0#1;havoc main_~r~0#1;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_~A~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1;assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647;main_~R~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; {1459#(<= ~counter~0 0)} is VALID [2022-02-20 17:24:21,638 INFO L272 TraceCheckUtils]: 2: Hoare triple {1459#(<= ~counter~0 0)} call assume_abort_if_not((if (main_~R~0#1 - 1) * (main_~R~0#1 - 1) < main_~A~0#1 then 1 else 0)); {1459#(<= ~counter~0 0)} is VALID [2022-02-20 17:24:21,639 INFO L290 TraceCheckUtils]: 3: Hoare triple {1459#(<= ~counter~0 0)} ~cond := #in~cond; {1459#(<= ~counter~0 0)} is VALID [2022-02-20 17:24:21,639 INFO L290 TraceCheckUtils]: 4: Hoare triple {1459#(<= ~counter~0 0)} assume !(0 == ~cond); {1459#(<= ~counter~0 0)} is VALID [2022-02-20 17:24:21,639 INFO L290 TraceCheckUtils]: 5: Hoare triple {1459#(<= ~counter~0 0)} assume true; {1459#(<= ~counter~0 0)} is VALID [2022-02-20 17:24:21,640 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {1459#(<= ~counter~0 0)} {1459#(<= ~counter~0 0)} #87#return; {1459#(<= ~counter~0 0)} is VALID [2022-02-20 17:24:21,640 INFO L272 TraceCheckUtils]: 7: Hoare triple {1459#(<= ~counter~0 0)} call assume_abort_if_not((if 1 == (if main_~A~0#1 < 0 && 0 != main_~A~0#1 % 2 then main_~A~0#1 % 2 - 2 else main_~A~0#1 % 2) then 1 else 0)); {1459#(<= ~counter~0 0)} is VALID [2022-02-20 17:24:21,640 INFO L290 TraceCheckUtils]: 8: Hoare triple {1459#(<= ~counter~0 0)} ~cond := #in~cond; {1459#(<= ~counter~0 0)} is VALID [2022-02-20 17:24:21,641 INFO L290 TraceCheckUtils]: 9: Hoare triple {1459#(<= ~counter~0 0)} assume !(0 == ~cond); {1459#(<= ~counter~0 0)} is VALID [2022-02-20 17:24:21,641 INFO L290 TraceCheckUtils]: 10: Hoare triple {1459#(<= ~counter~0 0)} assume true; {1459#(<= ~counter~0 0)} is VALID [2022-02-20 17:24:21,641 INFO L284 TraceCheckUtils]: 11: Hoare quadruple {1459#(<= ~counter~0 0)} {1459#(<= ~counter~0 0)} #89#return; {1459#(<= ~counter~0 0)} is VALID [2022-02-20 17:24:21,642 INFO L290 TraceCheckUtils]: 12: Hoare triple {1459#(<= ~counter~0 0)} main_~u~0#1 := 1 + 2 * main_~R~0#1;main_~v~0#1 := 1;main_~r~0#1 := main_~R~0#1 * main_~R~0#1 - main_~A~0#1; {1459#(<= ~counter~0 0)} is VALID [2022-02-20 17:24:21,642 INFO L290 TraceCheckUtils]: 13: Hoare triple {1459#(<= ~counter~0 0)} main_#t~post6#1 := ~counter~0;~counter~0 := 1 + main_#t~post6#1; {1499#(<= ~counter~0 1)} is VALID [2022-02-20 17:24:21,642 INFO L290 TraceCheckUtils]: 14: Hoare triple {1499#(<= ~counter~0 1)} assume !!(main_#t~post6#1 < 5);havoc main_#t~post6#1; {1499#(<= ~counter~0 1)} is VALID [2022-02-20 17:24:21,643 INFO L272 TraceCheckUtils]: 15: Hoare triple {1499#(<= ~counter~0 1)} call __VERIFIER_assert((if 4 * (main_~A~0#1 + main_~r~0#1) == main_~u~0#1 * main_~u~0#1 - main_~v~0#1 * main_~v~0#1 - 2 * main_~u~0#1 + 2 * main_~v~0#1 then 1 else 0)); {1499#(<= ~counter~0 1)} is VALID [2022-02-20 17:24:21,643 INFO L290 TraceCheckUtils]: 16: Hoare triple {1499#(<= ~counter~0 1)} ~cond := #in~cond; {1499#(<= ~counter~0 1)} is VALID [2022-02-20 17:24:21,644 INFO L290 TraceCheckUtils]: 17: Hoare triple {1499#(<= ~counter~0 1)} assume !(0 == ~cond); {1499#(<= ~counter~0 1)} is VALID [2022-02-20 17:24:21,644 INFO L290 TraceCheckUtils]: 18: Hoare triple {1499#(<= ~counter~0 1)} assume true; {1499#(<= ~counter~0 1)} is VALID [2022-02-20 17:24:21,644 INFO L284 TraceCheckUtils]: 19: Hoare quadruple {1499#(<= ~counter~0 1)} {1499#(<= ~counter~0 1)} #91#return; {1499#(<= ~counter~0 1)} is VALID [2022-02-20 17:24:21,645 INFO L290 TraceCheckUtils]: 20: Hoare triple {1499#(<= ~counter~0 1)} assume !!(0 != main_~r~0#1); {1499#(<= ~counter~0 1)} is VALID [2022-02-20 17:24:21,645 INFO L290 TraceCheckUtils]: 21: Hoare triple {1499#(<= ~counter~0 1)} main_#t~post7#1 := ~counter~0;~counter~0 := 1 + main_#t~post7#1; {1524#(<= ~counter~0 2)} is VALID [2022-02-20 17:24:21,645 INFO L290 TraceCheckUtils]: 22: Hoare triple {1524#(<= ~counter~0 2)} assume !!(main_#t~post7#1 < 5);havoc main_#t~post7#1; {1524#(<= ~counter~0 2)} is VALID [2022-02-20 17:24:21,646 INFO L272 TraceCheckUtils]: 23: Hoare triple {1524#(<= ~counter~0 2)} call __VERIFIER_assert((if 4 * (main_~A~0#1 + main_~r~0#1) == main_~u~0#1 * main_~u~0#1 - main_~v~0#1 * main_~v~0#1 - 2 * main_~u~0#1 + 2 * main_~v~0#1 then 1 else 0)); {1524#(<= ~counter~0 2)} is VALID [2022-02-20 17:24:21,646 INFO L290 TraceCheckUtils]: 24: Hoare triple {1524#(<= ~counter~0 2)} ~cond := #in~cond; {1524#(<= ~counter~0 2)} is VALID [2022-02-20 17:24:21,646 INFO L290 TraceCheckUtils]: 25: Hoare triple {1524#(<= ~counter~0 2)} assume !(0 == ~cond); {1524#(<= ~counter~0 2)} is VALID [2022-02-20 17:24:21,647 INFO L290 TraceCheckUtils]: 26: Hoare triple {1524#(<= ~counter~0 2)} assume true; {1524#(<= ~counter~0 2)} is VALID [2022-02-20 17:24:21,647 INFO L284 TraceCheckUtils]: 27: Hoare quadruple {1524#(<= ~counter~0 2)} {1524#(<= ~counter~0 2)} #93#return; {1524#(<= ~counter~0 2)} is VALID [2022-02-20 17:24:21,648 INFO L290 TraceCheckUtils]: 28: Hoare triple {1524#(<= ~counter~0 2)} assume !(main_~r~0#1 > 0); {1524#(<= ~counter~0 2)} is VALID [2022-02-20 17:24:21,648 INFO L290 TraceCheckUtils]: 29: Hoare triple {1524#(<= ~counter~0 2)} main_#t~post8#1 := ~counter~0;~counter~0 := 1 + main_#t~post8#1; {1549#(<= |ULTIMATE.start_main_#t~post8#1| 2)} is VALID [2022-02-20 17:24:21,648 INFO L290 TraceCheckUtils]: 30: Hoare triple {1549#(<= |ULTIMATE.start_main_#t~post8#1| 2)} assume !(main_#t~post8#1 < 5);havoc main_#t~post8#1; {1455#false} is VALID [2022-02-20 17:24:21,648 INFO L290 TraceCheckUtils]: 31: Hoare triple {1455#false} main_#t~post6#1 := ~counter~0;~counter~0 := 1 + main_#t~post6#1; {1455#false} is VALID [2022-02-20 17:24:21,649 INFO L290 TraceCheckUtils]: 32: Hoare triple {1455#false} assume !(main_#t~post6#1 < 5);havoc main_#t~post6#1; {1455#false} is VALID [2022-02-20 17:24:21,649 INFO L272 TraceCheckUtils]: 33: Hoare triple {1455#false} call __VERIFIER_assert((if 4 * main_~A~0#1 == main_~u~0#1 * main_~u~0#1 - main_~v~0#1 * main_~v~0#1 - 2 * main_~u~0#1 + 2 * main_~v~0#1 then 1 else 0)); {1455#false} is VALID [2022-02-20 17:24:21,649 INFO L290 TraceCheckUtils]: 34: Hoare triple {1455#false} ~cond := #in~cond; {1455#false} is VALID [2022-02-20 17:24:21,649 INFO L290 TraceCheckUtils]: 35: Hoare triple {1455#false} assume 0 == ~cond; {1455#false} is VALID [2022-02-20 17:24:21,649 INFO L290 TraceCheckUtils]: 36: Hoare triple {1455#false} assume !false; {1455#false} is VALID [2022-02-20 17:24:21,649 INFO L134 CoverageAnalysis]: Checked inductivity of 14 backedges. 6 proven. 4 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-02-20 17:24:21,649 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 17:24:21,796 INFO L290 TraceCheckUtils]: 36: Hoare triple {1455#false} assume !false; {1455#false} is VALID [2022-02-20 17:24:21,796 INFO L290 TraceCheckUtils]: 35: Hoare triple {1455#false} assume 0 == ~cond; {1455#false} is VALID [2022-02-20 17:24:21,796 INFO L290 TraceCheckUtils]: 34: Hoare triple {1455#false} ~cond := #in~cond; {1455#false} is VALID [2022-02-20 17:24:21,796 INFO L272 TraceCheckUtils]: 33: Hoare triple {1455#false} call __VERIFIER_assert((if 4 * main_~A~0#1 == main_~u~0#1 * main_~u~0#1 - main_~v~0#1 * main_~v~0#1 - 2 * main_~u~0#1 + 2 * main_~v~0#1 then 1 else 0)); {1455#false} is VALID [2022-02-20 17:24:21,796 INFO L290 TraceCheckUtils]: 32: Hoare triple {1455#false} assume !(main_#t~post6#1 < 5);havoc main_#t~post6#1; {1455#false} is VALID [2022-02-20 17:24:21,797 INFO L290 TraceCheckUtils]: 31: Hoare triple {1455#false} main_#t~post6#1 := ~counter~0;~counter~0 := 1 + main_#t~post6#1; {1455#false} is VALID [2022-02-20 17:24:21,798 INFO L290 TraceCheckUtils]: 30: Hoare triple {1589#(< |ULTIMATE.start_main_#t~post8#1| 5)} assume !(main_#t~post8#1 < 5);havoc main_#t~post8#1; {1455#false} is VALID [2022-02-20 17:24:21,798 INFO L290 TraceCheckUtils]: 29: Hoare triple {1593#(< ~counter~0 5)} main_#t~post8#1 := ~counter~0;~counter~0 := 1 + main_#t~post8#1; {1589#(< |ULTIMATE.start_main_#t~post8#1| 5)} is VALID [2022-02-20 17:24:21,798 INFO L290 TraceCheckUtils]: 28: Hoare triple {1593#(< ~counter~0 5)} assume !(main_~r~0#1 > 0); {1593#(< ~counter~0 5)} is VALID [2022-02-20 17:24:21,799 INFO L284 TraceCheckUtils]: 27: Hoare quadruple {1454#true} {1593#(< ~counter~0 5)} #93#return; {1593#(< ~counter~0 5)} is VALID [2022-02-20 17:24:21,799 INFO L290 TraceCheckUtils]: 26: Hoare triple {1454#true} assume true; {1454#true} is VALID [2022-02-20 17:24:21,799 INFO L290 TraceCheckUtils]: 25: Hoare triple {1454#true} assume !(0 == ~cond); {1454#true} is VALID [2022-02-20 17:24:21,799 INFO L290 TraceCheckUtils]: 24: Hoare triple {1454#true} ~cond := #in~cond; {1454#true} is VALID [2022-02-20 17:24:21,800 INFO L272 TraceCheckUtils]: 23: Hoare triple {1593#(< ~counter~0 5)} call __VERIFIER_assert((if 4 * (main_~A~0#1 + main_~r~0#1) == main_~u~0#1 * main_~u~0#1 - main_~v~0#1 * main_~v~0#1 - 2 * main_~u~0#1 + 2 * main_~v~0#1 then 1 else 0)); {1454#true} is VALID [2022-02-20 17:24:21,800 INFO L290 TraceCheckUtils]: 22: Hoare triple {1593#(< ~counter~0 5)} assume !!(main_#t~post7#1 < 5);havoc main_#t~post7#1; {1593#(< ~counter~0 5)} is VALID [2022-02-20 17:24:21,800 INFO L290 TraceCheckUtils]: 21: Hoare triple {1618#(< ~counter~0 4)} main_#t~post7#1 := ~counter~0;~counter~0 := 1 + main_#t~post7#1; {1593#(< ~counter~0 5)} is VALID [2022-02-20 17:24:21,801 INFO L290 TraceCheckUtils]: 20: Hoare triple {1618#(< ~counter~0 4)} assume !!(0 != main_~r~0#1); {1618#(< ~counter~0 4)} is VALID [2022-02-20 17:24:21,801 INFO L284 TraceCheckUtils]: 19: Hoare quadruple {1454#true} {1618#(< ~counter~0 4)} #91#return; {1618#(< ~counter~0 4)} is VALID [2022-02-20 17:24:21,801 INFO L290 TraceCheckUtils]: 18: Hoare triple {1454#true} assume true; {1454#true} is VALID [2022-02-20 17:24:21,802 INFO L290 TraceCheckUtils]: 17: Hoare triple {1454#true} assume !(0 == ~cond); {1454#true} is VALID [2022-02-20 17:24:21,802 INFO L290 TraceCheckUtils]: 16: Hoare triple {1454#true} ~cond := #in~cond; {1454#true} is VALID [2022-02-20 17:24:21,802 INFO L272 TraceCheckUtils]: 15: Hoare triple {1618#(< ~counter~0 4)} call __VERIFIER_assert((if 4 * (main_~A~0#1 + main_~r~0#1) == main_~u~0#1 * main_~u~0#1 - main_~v~0#1 * main_~v~0#1 - 2 * main_~u~0#1 + 2 * main_~v~0#1 then 1 else 0)); {1454#true} is VALID [2022-02-20 17:24:21,802 INFO L290 TraceCheckUtils]: 14: Hoare triple {1618#(< ~counter~0 4)} assume !!(main_#t~post6#1 < 5);havoc main_#t~post6#1; {1618#(< ~counter~0 4)} is VALID [2022-02-20 17:24:21,803 INFO L290 TraceCheckUtils]: 13: Hoare triple {1524#(<= ~counter~0 2)} main_#t~post6#1 := ~counter~0;~counter~0 := 1 + main_#t~post6#1; {1618#(< ~counter~0 4)} is VALID [2022-02-20 17:24:21,803 INFO L290 TraceCheckUtils]: 12: Hoare triple {1524#(<= ~counter~0 2)} main_~u~0#1 := 1 + 2 * main_~R~0#1;main_~v~0#1 := 1;main_~r~0#1 := main_~R~0#1 * main_~R~0#1 - main_~A~0#1; {1524#(<= ~counter~0 2)} is VALID [2022-02-20 17:24:21,803 INFO L284 TraceCheckUtils]: 11: Hoare quadruple {1454#true} {1524#(<= ~counter~0 2)} #89#return; {1524#(<= ~counter~0 2)} is VALID [2022-02-20 17:24:21,804 INFO L290 TraceCheckUtils]: 10: Hoare triple {1454#true} assume true; {1454#true} is VALID [2022-02-20 17:24:21,804 INFO L290 TraceCheckUtils]: 9: Hoare triple {1454#true} assume !(0 == ~cond); {1454#true} is VALID [2022-02-20 17:24:21,804 INFO L290 TraceCheckUtils]: 8: Hoare triple {1454#true} ~cond := #in~cond; {1454#true} is VALID [2022-02-20 17:24:21,804 INFO L272 TraceCheckUtils]: 7: Hoare triple {1524#(<= ~counter~0 2)} call assume_abort_if_not((if 1 == (if main_~A~0#1 < 0 && 0 != main_~A~0#1 % 2 then main_~A~0#1 % 2 - 2 else main_~A~0#1 % 2) then 1 else 0)); {1454#true} is VALID [2022-02-20 17:24:21,807 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {1454#true} {1524#(<= ~counter~0 2)} #87#return; {1524#(<= ~counter~0 2)} is VALID [2022-02-20 17:24:21,807 INFO L290 TraceCheckUtils]: 5: Hoare triple {1454#true} assume true; {1454#true} is VALID [2022-02-20 17:24:21,807 INFO L290 TraceCheckUtils]: 4: Hoare triple {1454#true} assume !(0 == ~cond); {1454#true} is VALID [2022-02-20 17:24:21,807 INFO L290 TraceCheckUtils]: 3: Hoare triple {1454#true} ~cond := #in~cond; {1454#true} is VALID [2022-02-20 17:24:21,807 INFO L272 TraceCheckUtils]: 2: Hoare triple {1524#(<= ~counter~0 2)} call assume_abort_if_not((if (main_~R~0#1 - 1) * (main_~R~0#1 - 1) < main_~A~0#1 then 1 else 0)); {1454#true} is VALID [2022-02-20 17:24:21,808 INFO L290 TraceCheckUtils]: 1: Hoare triple {1524#(<= ~counter~0 2)} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~nondet5#1, main_#t~post7#1, main_#t~post8#1, main_#t~post6#1, main_~A~0#1, main_~R~0#1, main_~u~0#1, main_~v~0#1, main_~r~0#1;havoc main_~A~0#1;havoc main_~R~0#1;havoc main_~u~0#1;havoc main_~v~0#1;havoc main_~r~0#1;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_~A~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1;assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647;main_~R~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; {1524#(<= ~counter~0 2)} is VALID [2022-02-20 17:24:21,808 INFO L290 TraceCheckUtils]: 0: Hoare triple {1454#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(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {1524#(<= ~counter~0 2)} is VALID [2022-02-20 17:24:21,808 INFO L134 CoverageAnalysis]: Checked inductivity of 14 backedges. 6 proven. 0 refuted. 0 times theorem prover too weak. 8 trivial. 0 not checked. [2022-02-20 17:24:21,808 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 17:24:21,808 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2099791826] [2022-02-20 17:24:21,809 WARN L317 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-02-20 17:24:21,809 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [287835178] [2022-02-20 17:24:21,809 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [287835178] provided 1 perfect and 1 imperfect interpolant sequences [2022-02-20 17:24:21,809 INFO L191 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-02-20 17:24:21,809 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [6] imperfect sequences [5] total 9 [2022-02-20 17:24:21,809 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [55086947] [2022-02-20 17:24:21,809 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 17:24:21,810 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 3.6666666666666665) internal successors, (22), 6 states have internal predecessors, (22), 4 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (4), 3 states have call predecessors, (4), 3 states have call successors, (4) Word has length 37 [2022-02-20 17:24:21,810 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 17:24:21,810 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 6 states, 6 states have (on average 3.6666666666666665) internal successors, (22), 6 states have internal predecessors, (22), 4 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (4), 3 states have call predecessors, (4), 3 states have call successors, (4) [2022-02-20 17:24:21,830 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 31 edges. 31 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 17:24:21,830 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 6 states [2022-02-20 17:24:21,830 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 17:24:21,831 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 6 interpolants. [2022-02-20 17:24:21,831 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=26, Invalid=46, Unknown=0, NotChecked=0, Total=72 [2022-02-20 17:24:21,831 INFO L87 Difference]: Start difference. First operand 40 states and 47 transitions. Second operand has 6 states, 6 states have (on average 3.6666666666666665) internal successors, (22), 6 states have internal predecessors, (22), 4 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (4), 3 states have call predecessors, (4), 3 states have call successors, (4) [2022-02-20 17:24:21,951 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:24:21,951 INFO L93 Difference]: Finished difference Result 70 states and 85 transitions. [2022-02-20 17:24:21,951 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-02-20 17:24:21,951 INFO L78 Accepts]: Start accepts. Automaton has has 6 states, 6 states have (on average 3.6666666666666665) internal successors, (22), 6 states have internal predecessors, (22), 4 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (4), 3 states have call predecessors, (4), 3 states have call successors, (4) Word has length 37 [2022-02-20 17:24:21,951 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 17:24:21,952 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 3.6666666666666665) internal successors, (22), 6 states have internal predecessors, (22), 4 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (4), 3 states have call predecessors, (4), 3 states have call successors, (4) [2022-02-20 17:24:21,953 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 83 transitions. [2022-02-20 17:24:21,953 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 6 states, 6 states have (on average 3.6666666666666665) internal successors, (22), 6 states have internal predecessors, (22), 4 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (4), 3 states have call predecessors, (4), 3 states have call successors, (4) [2022-02-20 17:24:21,954 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 83 transitions. [2022-02-20 17:24:21,954 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 6 states and 83 transitions. [2022-02-20 17:24:22,015 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 83 edges. 83 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 17:24:22,016 INFO L225 Difference]: With dead ends: 70 [2022-02-20 17:24:22,016 INFO L226 Difference]: Without dead ends: 49 [2022-02-20 17:24:22,016 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 72 GetRequests, 64 SyntacticMatches, 1 SemanticMatches, 7 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 8 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=26, Invalid=46, Unknown=0, NotChecked=0, Total=72 [2022-02-20 17:24:22,017 INFO L933 BasicCegarLoop]: 34 mSDtfsCounter, 23 mSDsluCounter, 80 mSDsCounter, 0 mSdLazyCounter, 25 mSolverCounterSat, 9 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 23 SdHoareTripleChecker+Valid, 114 SdHoareTripleChecker+Invalid, 34 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 9 IncrementalHoareTripleChecker+Valid, 25 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 17:24:22,017 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [23 Valid, 114 Invalid, 34 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [9 Valid, 25 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 17:24:22,017 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 49 states. [2022-02-20 17:24:22,030 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 49 to 48. [2022-02-20 17:24:22,030 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 17:24:22,030 INFO L82 GeneralOperation]: Start isEquivalent. First operand 49 states. Second operand has 48 states, 35 states have (on average 1.1714285714285715) internal successors, (41), 35 states have internal predecessors, (41), 8 states have call successors, (8), 5 states have call predecessors, (8), 4 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-02-20 17:24:22,030 INFO L74 IsIncluded]: Start isIncluded. First operand 49 states. Second operand has 48 states, 35 states have (on average 1.1714285714285715) internal successors, (41), 35 states have internal predecessors, (41), 8 states have call successors, (8), 5 states have call predecessors, (8), 4 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-02-20 17:24:22,031 INFO L87 Difference]: Start difference. First operand 49 states. Second operand has 48 states, 35 states have (on average 1.1714285714285715) internal successors, (41), 35 states have internal predecessors, (41), 8 states have call successors, (8), 5 states have call predecessors, (8), 4 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-02-20 17:24:22,032 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:24:22,032 INFO L93 Difference]: Finished difference Result 49 states and 57 transitions. [2022-02-20 17:24:22,032 INFO L276 IsEmpty]: Start isEmpty. Operand 49 states and 57 transitions. [2022-02-20 17:24:22,032 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 17:24:22,032 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 17:24:22,033 INFO L74 IsIncluded]: Start isIncluded. First operand has 48 states, 35 states have (on average 1.1714285714285715) internal successors, (41), 35 states have internal predecessors, (41), 8 states have call successors, (8), 5 states have call predecessors, (8), 4 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) Second operand 49 states. [2022-02-20 17:24:22,033 INFO L87 Difference]: Start difference. First operand has 48 states, 35 states have (on average 1.1714285714285715) internal successors, (41), 35 states have internal predecessors, (41), 8 states have call successors, (8), 5 states have call predecessors, (8), 4 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) Second operand 49 states. [2022-02-20 17:24:22,034 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:24:22,034 INFO L93 Difference]: Finished difference Result 49 states and 57 transitions. [2022-02-20 17:24:22,034 INFO L276 IsEmpty]: Start isEmpty. Operand 49 states and 57 transitions. [2022-02-20 17:24:22,034 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 17:24:22,035 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 17:24:22,035 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 17:24:22,035 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 17:24:22,035 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 48 states, 35 states have (on average 1.1714285714285715) internal successors, (41), 35 states have internal predecessors, (41), 8 states have call successors, (8), 5 states have call predecessors, (8), 4 states have return successors, (7), 7 states have call predecessors, (7), 7 states have call successors, (7) [2022-02-20 17:24:22,036 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 48 states to 48 states and 56 transitions. [2022-02-20 17:24:22,036 INFO L78 Accepts]: Start accepts. Automaton has 48 states and 56 transitions. Word has length 37 [2022-02-20 17:24:22,036 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 17:24:22,036 INFO L470 AbstractCegarLoop]: Abstraction has 48 states and 56 transitions. [2022-02-20 17:24:22,037 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 6 states, 6 states have (on average 3.6666666666666665) internal successors, (22), 6 states have internal predecessors, (22), 4 states have call successors, (5), 2 states have call predecessors, (5), 1 states have return successors, (4), 3 states have call predecessors, (4), 3 states have call successors, (4) [2022-02-20 17:24:22,037 INFO L276 IsEmpty]: Start isEmpty. Operand 48 states and 56 transitions. [2022-02-20 17:24:22,037 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 40 [2022-02-20 17:24:22,037 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 17:24:22,037 INFO L514 BasicCegarLoop]: trace histogram [3, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 17:24:22,056 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 17:24:22,247 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable5,7 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 17:24:22,248 INFO L402 AbstractCegarLoop]: === Iteration 7 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 17:24:22,248 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 17:24:22,248 INFO L85 PathProgramCache]: Analyzing trace with hash 30895492, now seen corresponding path program 1 times [2022-02-20 17:24:22,248 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 17:24:22,248 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [653571403] [2022-02-20 17:24:22,248 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 17:24:22,248 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 17:24:22,258 ERROR L252 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-02-20 17:24:22,258 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1973542680] [2022-02-20 17:24:22,258 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 17:24:22,258 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 17:24:22,258 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 17:24:22,261 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 17:24:22,263 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 17:24:22,303 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 17:24:22,304 INFO L263 TraceCheckSpWp]: Trace formula consists of 113 conjuncts, 7 conjunts are in the unsatisfiable core [2022-02-20 17:24:22,313 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 17:24:22,314 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 17:24:22,476 INFO L290 TraceCheckUtils]: 0: Hoare triple {1940#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(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {1945#(<= ~counter~0 0)} is VALID [2022-02-20 17:24:22,477 INFO L290 TraceCheckUtils]: 1: Hoare triple {1945#(<= ~counter~0 0)} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~nondet5#1, main_#t~post7#1, main_#t~post8#1, main_#t~post6#1, main_~A~0#1, main_~R~0#1, main_~u~0#1, main_~v~0#1, main_~r~0#1;havoc main_~A~0#1;havoc main_~R~0#1;havoc main_~u~0#1;havoc main_~v~0#1;havoc main_~r~0#1;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_~A~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1;assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647;main_~R~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; {1945#(<= ~counter~0 0)} is VALID [2022-02-20 17:24:22,477 INFO L272 TraceCheckUtils]: 2: Hoare triple {1945#(<= ~counter~0 0)} call assume_abort_if_not((if (main_~R~0#1 - 1) * (main_~R~0#1 - 1) < main_~A~0#1 then 1 else 0)); {1945#(<= ~counter~0 0)} is VALID [2022-02-20 17:24:22,477 INFO L290 TraceCheckUtils]: 3: Hoare triple {1945#(<= ~counter~0 0)} ~cond := #in~cond; {1945#(<= ~counter~0 0)} is VALID [2022-02-20 17:24:22,478 INFO L290 TraceCheckUtils]: 4: Hoare triple {1945#(<= ~counter~0 0)} assume !(0 == ~cond); {1945#(<= ~counter~0 0)} is VALID [2022-02-20 17:24:22,478 INFO L290 TraceCheckUtils]: 5: Hoare triple {1945#(<= ~counter~0 0)} assume true; {1945#(<= ~counter~0 0)} is VALID [2022-02-20 17:24:22,479 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {1945#(<= ~counter~0 0)} {1945#(<= ~counter~0 0)} #87#return; {1945#(<= ~counter~0 0)} is VALID [2022-02-20 17:24:22,479 INFO L272 TraceCheckUtils]: 7: Hoare triple {1945#(<= ~counter~0 0)} call assume_abort_if_not((if 1 == (if main_~A~0#1 < 0 && 0 != main_~A~0#1 % 2 then main_~A~0#1 % 2 - 2 else main_~A~0#1 % 2) then 1 else 0)); {1945#(<= ~counter~0 0)} is VALID [2022-02-20 17:24:22,479 INFO L290 TraceCheckUtils]: 8: Hoare triple {1945#(<= ~counter~0 0)} ~cond := #in~cond; {1945#(<= ~counter~0 0)} is VALID [2022-02-20 17:24:22,480 INFO L290 TraceCheckUtils]: 9: Hoare triple {1945#(<= ~counter~0 0)} assume !(0 == ~cond); {1945#(<= ~counter~0 0)} is VALID [2022-02-20 17:24:22,480 INFO L290 TraceCheckUtils]: 10: Hoare triple {1945#(<= ~counter~0 0)} assume true; {1945#(<= ~counter~0 0)} is VALID [2022-02-20 17:24:22,480 INFO L284 TraceCheckUtils]: 11: Hoare quadruple {1945#(<= ~counter~0 0)} {1945#(<= ~counter~0 0)} #89#return; {1945#(<= ~counter~0 0)} is VALID [2022-02-20 17:24:22,481 INFO L290 TraceCheckUtils]: 12: Hoare triple {1945#(<= ~counter~0 0)} main_~u~0#1 := 1 + 2 * main_~R~0#1;main_~v~0#1 := 1;main_~r~0#1 := main_~R~0#1 * main_~R~0#1 - main_~A~0#1; {1945#(<= ~counter~0 0)} is VALID [2022-02-20 17:24:22,481 INFO L290 TraceCheckUtils]: 13: Hoare triple {1945#(<= ~counter~0 0)} main_#t~post6#1 := ~counter~0;~counter~0 := 1 + main_#t~post6#1; {1985#(<= ~counter~0 1)} is VALID [2022-02-20 17:24:22,482 INFO L290 TraceCheckUtils]: 14: Hoare triple {1985#(<= ~counter~0 1)} assume !!(main_#t~post6#1 < 5);havoc main_#t~post6#1; {1985#(<= ~counter~0 1)} is VALID [2022-02-20 17:24:22,482 INFO L272 TraceCheckUtils]: 15: Hoare triple {1985#(<= ~counter~0 1)} call __VERIFIER_assert((if 4 * (main_~A~0#1 + main_~r~0#1) == main_~u~0#1 * main_~u~0#1 - main_~v~0#1 * main_~v~0#1 - 2 * main_~u~0#1 + 2 * main_~v~0#1 then 1 else 0)); {1985#(<= ~counter~0 1)} is VALID [2022-02-20 17:24:22,483 INFO L290 TraceCheckUtils]: 16: Hoare triple {1985#(<= ~counter~0 1)} ~cond := #in~cond; {1985#(<= ~counter~0 1)} is VALID [2022-02-20 17:24:22,483 INFO L290 TraceCheckUtils]: 17: Hoare triple {1985#(<= ~counter~0 1)} assume !(0 == ~cond); {1985#(<= ~counter~0 1)} is VALID [2022-02-20 17:24:22,483 INFO L290 TraceCheckUtils]: 18: Hoare triple {1985#(<= ~counter~0 1)} assume true; {1985#(<= ~counter~0 1)} is VALID [2022-02-20 17:24:22,484 INFO L284 TraceCheckUtils]: 19: Hoare quadruple {1985#(<= ~counter~0 1)} {1985#(<= ~counter~0 1)} #91#return; {1985#(<= ~counter~0 1)} is VALID [2022-02-20 17:24:22,484 INFO L290 TraceCheckUtils]: 20: Hoare triple {1985#(<= ~counter~0 1)} assume !!(0 != main_~r~0#1); {1985#(<= ~counter~0 1)} is VALID [2022-02-20 17:24:22,485 INFO L290 TraceCheckUtils]: 21: Hoare triple {1985#(<= ~counter~0 1)} main_#t~post7#1 := ~counter~0;~counter~0 := 1 + main_#t~post7#1; {2010#(<= ~counter~0 2)} is VALID [2022-02-20 17:24:22,485 INFO L290 TraceCheckUtils]: 22: Hoare triple {2010#(<= ~counter~0 2)} assume !!(main_#t~post7#1 < 5);havoc main_#t~post7#1; {2010#(<= ~counter~0 2)} is VALID [2022-02-20 17:24:22,486 INFO L272 TraceCheckUtils]: 23: Hoare triple {2010#(<= ~counter~0 2)} call __VERIFIER_assert((if 4 * (main_~A~0#1 + main_~r~0#1) == main_~u~0#1 * main_~u~0#1 - main_~v~0#1 * main_~v~0#1 - 2 * main_~u~0#1 + 2 * main_~v~0#1 then 1 else 0)); {2010#(<= ~counter~0 2)} is VALID [2022-02-20 17:24:22,486 INFO L290 TraceCheckUtils]: 24: Hoare triple {2010#(<= ~counter~0 2)} ~cond := #in~cond; {2010#(<= ~counter~0 2)} is VALID [2022-02-20 17:24:22,486 INFO L290 TraceCheckUtils]: 25: Hoare triple {2010#(<= ~counter~0 2)} assume !(0 == ~cond); {2010#(<= ~counter~0 2)} is VALID [2022-02-20 17:24:22,487 INFO L290 TraceCheckUtils]: 26: Hoare triple {2010#(<= ~counter~0 2)} assume true; {2010#(<= ~counter~0 2)} is VALID [2022-02-20 17:24:22,487 INFO L284 TraceCheckUtils]: 27: Hoare quadruple {2010#(<= ~counter~0 2)} {2010#(<= ~counter~0 2)} #93#return; {2010#(<= ~counter~0 2)} is VALID [2022-02-20 17:24:22,488 INFO L290 TraceCheckUtils]: 28: Hoare triple {2010#(<= ~counter~0 2)} assume !!(main_~r~0#1 > 0);main_~r~0#1 := main_~r~0#1 - main_~v~0#1;main_~v~0#1 := 2 + main_~v~0#1; {2010#(<= ~counter~0 2)} is VALID [2022-02-20 17:24:22,488 INFO L290 TraceCheckUtils]: 29: Hoare triple {2010#(<= ~counter~0 2)} main_#t~post7#1 := ~counter~0;~counter~0 := 1 + main_#t~post7#1; {2035#(<= |ULTIMATE.start_main_#t~post7#1| 2)} is VALID [2022-02-20 17:24:22,488 INFO L290 TraceCheckUtils]: 30: Hoare triple {2035#(<= |ULTIMATE.start_main_#t~post7#1| 2)} assume !(main_#t~post7#1 < 5);havoc main_#t~post7#1; {1941#false} is VALID [2022-02-20 17:24:22,493 INFO L290 TraceCheckUtils]: 31: Hoare triple {1941#false} main_#t~post8#1 := ~counter~0;~counter~0 := 1 + main_#t~post8#1; {1941#false} is VALID [2022-02-20 17:24:22,493 INFO L290 TraceCheckUtils]: 32: Hoare triple {1941#false} assume !(main_#t~post8#1 < 5);havoc main_#t~post8#1; {1941#false} is VALID [2022-02-20 17:24:22,493 INFO L290 TraceCheckUtils]: 33: Hoare triple {1941#false} main_#t~post6#1 := ~counter~0;~counter~0 := 1 + main_#t~post6#1; {1941#false} is VALID [2022-02-20 17:24:22,494 INFO L290 TraceCheckUtils]: 34: Hoare triple {1941#false} assume !(main_#t~post6#1 < 5);havoc main_#t~post6#1; {1941#false} is VALID [2022-02-20 17:24:22,496 INFO L272 TraceCheckUtils]: 35: Hoare triple {1941#false} call __VERIFIER_assert((if 4 * main_~A~0#1 == main_~u~0#1 * main_~u~0#1 - main_~v~0#1 * main_~v~0#1 - 2 * main_~u~0#1 + 2 * main_~v~0#1 then 1 else 0)); {1941#false} is VALID [2022-02-20 17:24:22,497 INFO L290 TraceCheckUtils]: 36: Hoare triple {1941#false} ~cond := #in~cond; {1941#false} is VALID [2022-02-20 17:24:22,497 INFO L290 TraceCheckUtils]: 37: Hoare triple {1941#false} assume 0 == ~cond; {1941#false} is VALID [2022-02-20 17:24:22,499 INFO L290 TraceCheckUtils]: 38: Hoare triple {1941#false} assume !false; {1941#false} is VALID [2022-02-20 17:24:22,499 INFO L134 CoverageAnalysis]: Checked inductivity of 16 backedges. 6 proven. 6 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-02-20 17:24:22,499 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 17:24:22,680 INFO L290 TraceCheckUtils]: 38: Hoare triple {1941#false} assume !false; {1941#false} is VALID [2022-02-20 17:24:22,680 INFO L290 TraceCheckUtils]: 37: Hoare triple {1941#false} assume 0 == ~cond; {1941#false} is VALID [2022-02-20 17:24:22,680 INFO L290 TraceCheckUtils]: 36: Hoare triple {1941#false} ~cond := #in~cond; {1941#false} is VALID [2022-02-20 17:24:22,680 INFO L272 TraceCheckUtils]: 35: Hoare triple {1941#false} call __VERIFIER_assert((if 4 * main_~A~0#1 == main_~u~0#1 * main_~u~0#1 - main_~v~0#1 * main_~v~0#1 - 2 * main_~u~0#1 + 2 * main_~v~0#1 then 1 else 0)); {1941#false} is VALID [2022-02-20 17:24:22,681 INFO L290 TraceCheckUtils]: 34: Hoare triple {1941#false} assume !(main_#t~post6#1 < 5);havoc main_#t~post6#1; {1941#false} is VALID [2022-02-20 17:24:22,681 INFO L290 TraceCheckUtils]: 33: Hoare triple {1941#false} main_#t~post6#1 := ~counter~0;~counter~0 := 1 + main_#t~post6#1; {1941#false} is VALID [2022-02-20 17:24:22,681 INFO L290 TraceCheckUtils]: 32: Hoare triple {1941#false} assume !(main_#t~post8#1 < 5);havoc main_#t~post8#1; {1941#false} is VALID [2022-02-20 17:24:22,681 INFO L290 TraceCheckUtils]: 31: Hoare triple {1941#false} main_#t~post8#1 := ~counter~0;~counter~0 := 1 + main_#t~post8#1; {1941#false} is VALID [2022-02-20 17:24:22,681 INFO L290 TraceCheckUtils]: 30: Hoare triple {2087#(< |ULTIMATE.start_main_#t~post7#1| 5)} assume !(main_#t~post7#1 < 5);havoc main_#t~post7#1; {1941#false} is VALID [2022-02-20 17:24:22,682 INFO L290 TraceCheckUtils]: 29: Hoare triple {2091#(< ~counter~0 5)} main_#t~post7#1 := ~counter~0;~counter~0 := 1 + main_#t~post7#1; {2087#(< |ULTIMATE.start_main_#t~post7#1| 5)} is VALID [2022-02-20 17:24:22,682 INFO L290 TraceCheckUtils]: 28: Hoare triple {2091#(< ~counter~0 5)} assume !!(main_~r~0#1 > 0);main_~r~0#1 := main_~r~0#1 - main_~v~0#1;main_~v~0#1 := 2 + main_~v~0#1; {2091#(< ~counter~0 5)} is VALID [2022-02-20 17:24:22,683 INFO L284 TraceCheckUtils]: 27: Hoare quadruple {1940#true} {2091#(< ~counter~0 5)} #93#return; {2091#(< ~counter~0 5)} is VALID [2022-02-20 17:24:22,683 INFO L290 TraceCheckUtils]: 26: Hoare triple {1940#true} assume true; {1940#true} is VALID [2022-02-20 17:24:22,683 INFO L290 TraceCheckUtils]: 25: Hoare triple {1940#true} assume !(0 == ~cond); {1940#true} is VALID [2022-02-20 17:24:22,683 INFO L290 TraceCheckUtils]: 24: Hoare triple {1940#true} ~cond := #in~cond; {1940#true} is VALID [2022-02-20 17:24:22,683 INFO L272 TraceCheckUtils]: 23: Hoare triple {2091#(< ~counter~0 5)} call __VERIFIER_assert((if 4 * (main_~A~0#1 + main_~r~0#1) == main_~u~0#1 * main_~u~0#1 - main_~v~0#1 * main_~v~0#1 - 2 * main_~u~0#1 + 2 * main_~v~0#1 then 1 else 0)); {1940#true} is VALID [2022-02-20 17:24:22,683 INFO L290 TraceCheckUtils]: 22: Hoare triple {2091#(< ~counter~0 5)} assume !!(main_#t~post7#1 < 5);havoc main_#t~post7#1; {2091#(< ~counter~0 5)} is VALID [2022-02-20 17:24:22,684 INFO L290 TraceCheckUtils]: 21: Hoare triple {2116#(< ~counter~0 4)} main_#t~post7#1 := ~counter~0;~counter~0 := 1 + main_#t~post7#1; {2091#(< ~counter~0 5)} is VALID [2022-02-20 17:24:22,684 INFO L290 TraceCheckUtils]: 20: Hoare triple {2116#(< ~counter~0 4)} assume !!(0 != main_~r~0#1); {2116#(< ~counter~0 4)} is VALID [2022-02-20 17:24:22,685 INFO L284 TraceCheckUtils]: 19: Hoare quadruple {1940#true} {2116#(< ~counter~0 4)} #91#return; {2116#(< ~counter~0 4)} is VALID [2022-02-20 17:24:22,685 INFO L290 TraceCheckUtils]: 18: Hoare triple {1940#true} assume true; {1940#true} is VALID [2022-02-20 17:24:22,685 INFO L290 TraceCheckUtils]: 17: Hoare triple {1940#true} assume !(0 == ~cond); {1940#true} is VALID [2022-02-20 17:24:22,685 INFO L290 TraceCheckUtils]: 16: Hoare triple {1940#true} ~cond := #in~cond; {1940#true} is VALID [2022-02-20 17:24:22,685 INFO L272 TraceCheckUtils]: 15: Hoare triple {2116#(< ~counter~0 4)} call __VERIFIER_assert((if 4 * (main_~A~0#1 + main_~r~0#1) == main_~u~0#1 * main_~u~0#1 - main_~v~0#1 * main_~v~0#1 - 2 * main_~u~0#1 + 2 * main_~v~0#1 then 1 else 0)); {1940#true} is VALID [2022-02-20 17:24:22,686 INFO L290 TraceCheckUtils]: 14: Hoare triple {2116#(< ~counter~0 4)} assume !!(main_#t~post6#1 < 5);havoc main_#t~post6#1; {2116#(< ~counter~0 4)} is VALID [2022-02-20 17:24:22,686 INFO L290 TraceCheckUtils]: 13: Hoare triple {2010#(<= ~counter~0 2)} main_#t~post6#1 := ~counter~0;~counter~0 := 1 + main_#t~post6#1; {2116#(< ~counter~0 4)} is VALID [2022-02-20 17:24:22,687 INFO L290 TraceCheckUtils]: 12: Hoare triple {2010#(<= ~counter~0 2)} main_~u~0#1 := 1 + 2 * main_~R~0#1;main_~v~0#1 := 1;main_~r~0#1 := main_~R~0#1 * main_~R~0#1 - main_~A~0#1; {2010#(<= ~counter~0 2)} is VALID [2022-02-20 17:24:22,687 INFO L284 TraceCheckUtils]: 11: Hoare quadruple {1940#true} {2010#(<= ~counter~0 2)} #89#return; {2010#(<= ~counter~0 2)} is VALID [2022-02-20 17:24:22,687 INFO L290 TraceCheckUtils]: 10: Hoare triple {1940#true} assume true; {1940#true} is VALID [2022-02-20 17:24:22,687 INFO L290 TraceCheckUtils]: 9: Hoare triple {1940#true} assume !(0 == ~cond); {1940#true} is VALID [2022-02-20 17:24:22,687 INFO L290 TraceCheckUtils]: 8: Hoare triple {1940#true} ~cond := #in~cond; {1940#true} is VALID [2022-02-20 17:24:22,687 INFO L272 TraceCheckUtils]: 7: Hoare triple {2010#(<= ~counter~0 2)} call assume_abort_if_not((if 1 == (if main_~A~0#1 < 0 && 0 != main_~A~0#1 % 2 then main_~A~0#1 % 2 - 2 else main_~A~0#1 % 2) then 1 else 0)); {1940#true} is VALID [2022-02-20 17:24:22,688 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {1940#true} {2010#(<= ~counter~0 2)} #87#return; {2010#(<= ~counter~0 2)} is VALID [2022-02-20 17:24:22,688 INFO L290 TraceCheckUtils]: 5: Hoare triple {1940#true} assume true; {1940#true} is VALID [2022-02-20 17:24:22,688 INFO L290 TraceCheckUtils]: 4: Hoare triple {1940#true} assume !(0 == ~cond); {1940#true} is VALID [2022-02-20 17:24:22,688 INFO L290 TraceCheckUtils]: 3: Hoare triple {1940#true} ~cond := #in~cond; {1940#true} is VALID [2022-02-20 17:24:22,689 INFO L272 TraceCheckUtils]: 2: Hoare triple {2010#(<= ~counter~0 2)} call assume_abort_if_not((if (main_~R~0#1 - 1) * (main_~R~0#1 - 1) < main_~A~0#1 then 1 else 0)); {1940#true} is VALID [2022-02-20 17:24:22,689 INFO L290 TraceCheckUtils]: 1: Hoare triple {2010#(<= ~counter~0 2)} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~nondet5#1, main_#t~post7#1, main_#t~post8#1, main_#t~post6#1, main_~A~0#1, main_~R~0#1, main_~u~0#1, main_~v~0#1, main_~r~0#1;havoc main_~A~0#1;havoc main_~R~0#1;havoc main_~u~0#1;havoc main_~v~0#1;havoc main_~r~0#1;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_~A~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1;assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647;main_~R~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; {2010#(<= ~counter~0 2)} is VALID [2022-02-20 17:24:22,689 INFO L290 TraceCheckUtils]: 0: Hoare triple {1940#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(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {2010#(<= ~counter~0 2)} is VALID [2022-02-20 17:24:22,690 INFO L134 CoverageAnalysis]: Checked inductivity of 16 backedges. 6 proven. 2 refuted. 0 times theorem prover too weak. 8 trivial. 0 not checked. [2022-02-20 17:24:22,690 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 17:24:22,690 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [653571403] [2022-02-20 17:24:22,690 WARN L317 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-02-20 17:24:22,690 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1973542680] [2022-02-20 17:24:22,690 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1973542680] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 17:24:22,690 INFO L191 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-02-20 17:24:22,690 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [5, 6] total 9 [2022-02-20 17:24:22,691 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1648037790] [2022-02-20 17:24:22,691 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-02-20 17:24:22,691 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 4.888888888888889) internal successors, (44), 9 states have internal predecessors, (44), 6 states have call successors, (9), 5 states have call predecessors, (9), 4 states have return successors, (8), 5 states have call predecessors, (8), 5 states have call successors, (8) Word has length 39 [2022-02-20 17:24:22,691 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 17:24:22,692 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 9 states, 9 states have (on average 4.888888888888889) internal successors, (44), 9 states have internal predecessors, (44), 6 states have call successors, (9), 5 states have call predecessors, (9), 4 states have return successors, (8), 5 states have call predecessors, (8), 5 states have call successors, (8) [2022-02-20 17:24:22,731 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 61 edges. 61 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 17:24:22,731 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-02-20 17:24:22,731 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 17:24:22,731 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-02-20 17:24:22,732 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=26, Invalid=46, Unknown=0, NotChecked=0, Total=72 [2022-02-20 17:24:22,732 INFO L87 Difference]: Start difference. First operand 48 states and 56 transitions. Second operand has 9 states, 9 states have (on average 4.888888888888889) internal successors, (44), 9 states have internal predecessors, (44), 6 states have call successors, (9), 5 states have call predecessors, (9), 4 states have return successors, (8), 5 states have call predecessors, (8), 5 states have call successors, (8) [2022-02-20 17:24:22,987 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:24:22,987 INFO L93 Difference]: Finished difference Result 104 states and 129 transitions. [2022-02-20 17:24:22,987 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 11 states. [2022-02-20 17:24:22,987 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 4.888888888888889) internal successors, (44), 9 states have internal predecessors, (44), 6 states have call successors, (9), 5 states have call predecessors, (9), 4 states have return successors, (8), 5 states have call predecessors, (8), 5 states have call successors, (8) Word has length 39 [2022-02-20 17:24:22,987 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 17:24:22,988 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 4.888888888888889) internal successors, (44), 9 states have internal predecessors, (44), 6 states have call successors, (9), 5 states have call predecessors, (9), 4 states have return successors, (8), 5 states have call predecessors, (8), 5 states have call successors, (8) [2022-02-20 17:24:22,989 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 126 transitions. [2022-02-20 17:24:22,989 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 4.888888888888889) internal successors, (44), 9 states have internal predecessors, (44), 6 states have call successors, (9), 5 states have call predecessors, (9), 4 states have return successors, (8), 5 states have call predecessors, (8), 5 states have call successors, (8) [2022-02-20 17:24:22,991 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 11 states to 11 states and 126 transitions. [2022-02-20 17:24:22,991 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 11 states and 126 transitions. [2022-02-20 17:24:23,070 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 126 edges. 126 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 17:24:23,072 INFO L225 Difference]: With dead ends: 104 [2022-02-20 17:24:23,072 INFO L226 Difference]: Without dead ends: 83 [2022-02-20 17:24:23,073 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 79 GetRequests, 68 SyntacticMatches, 1 SemanticMatches, 10 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 11 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=46, Invalid=86, Unknown=0, NotChecked=0, Total=132 [2022-02-20 17:24:23,073 INFO L933 BasicCegarLoop]: 39 mSDtfsCounter, 51 mSDsluCounter, 144 mSDsCounter, 0 mSdLazyCounter, 55 mSolverCounterSat, 22 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 51 SdHoareTripleChecker+Valid, 183 SdHoareTripleChecker+Invalid, 77 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 22 IncrementalHoareTripleChecker+Valid, 55 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 17:24:23,073 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [51 Valid, 183 Invalid, 77 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [22 Valid, 55 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 17:24:23,074 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 83 states. [2022-02-20 17:24:23,100 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 83 to 75. [2022-02-20 17:24:23,100 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 17:24:23,100 INFO L82 GeneralOperation]: Start isEquivalent. First operand 83 states. Second operand has 75 states, 55 states have (on average 1.2) internal successors, (66), 56 states have internal predecessors, (66), 13 states have call successors, (13), 7 states have call predecessors, (13), 6 states have return successors, (12), 11 states have call predecessors, (12), 12 states have call successors, (12) [2022-02-20 17:24:23,101 INFO L74 IsIncluded]: Start isIncluded. First operand 83 states. Second operand has 75 states, 55 states have (on average 1.2) internal successors, (66), 56 states have internal predecessors, (66), 13 states have call successors, (13), 7 states have call predecessors, (13), 6 states have return successors, (12), 11 states have call predecessors, (12), 12 states have call successors, (12) [2022-02-20 17:24:23,101 INFO L87 Difference]: Start difference. First operand 83 states. Second operand has 75 states, 55 states have (on average 1.2) internal successors, (66), 56 states have internal predecessors, (66), 13 states have call successors, (13), 7 states have call predecessors, (13), 6 states have return successors, (12), 11 states have call predecessors, (12), 12 states have call successors, (12) [2022-02-20 17:24:23,103 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:24:23,103 INFO L93 Difference]: Finished difference Result 83 states and 99 transitions. [2022-02-20 17:24:23,103 INFO L276 IsEmpty]: Start isEmpty. Operand 83 states and 99 transitions. [2022-02-20 17:24:23,103 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 17:24:23,103 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 17:24:23,104 INFO L74 IsIncluded]: Start isIncluded. First operand has 75 states, 55 states have (on average 1.2) internal successors, (66), 56 states have internal predecessors, (66), 13 states have call successors, (13), 7 states have call predecessors, (13), 6 states have return successors, (12), 11 states have call predecessors, (12), 12 states have call successors, (12) Second operand 83 states. [2022-02-20 17:24:23,104 INFO L87 Difference]: Start difference. First operand has 75 states, 55 states have (on average 1.2) internal successors, (66), 56 states have internal predecessors, (66), 13 states have call successors, (13), 7 states have call predecessors, (13), 6 states have return successors, (12), 11 states have call predecessors, (12), 12 states have call successors, (12) Second operand 83 states. [2022-02-20 17:24:23,106 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:24:23,106 INFO L93 Difference]: Finished difference Result 83 states and 99 transitions. [2022-02-20 17:24:23,106 INFO L276 IsEmpty]: Start isEmpty. Operand 83 states and 99 transitions. [2022-02-20 17:24:23,106 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 17:24:23,106 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 17:24:23,106 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 17:24:23,107 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 17:24:23,107 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 75 states, 55 states have (on average 1.2) internal successors, (66), 56 states have internal predecessors, (66), 13 states have call successors, (13), 7 states have call predecessors, (13), 6 states have return successors, (12), 11 states have call predecessors, (12), 12 states have call successors, (12) [2022-02-20 17:24:23,108 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 75 states to 75 states and 91 transitions. [2022-02-20 17:24:23,109 INFO L78 Accepts]: Start accepts. Automaton has 75 states and 91 transitions. Word has length 39 [2022-02-20 17:24:23,109 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 17:24:23,109 INFO L470 AbstractCegarLoop]: Abstraction has 75 states and 91 transitions. [2022-02-20 17:24:23,109 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 9 states have (on average 4.888888888888889) internal successors, (44), 9 states have internal predecessors, (44), 6 states have call successors, (9), 5 states have call predecessors, (9), 4 states have return successors, (8), 5 states have call predecessors, (8), 5 states have call successors, (8) [2022-02-20 17:24:23,109 INFO L276 IsEmpty]: Start isEmpty. Operand 75 states and 91 transitions. [2022-02-20 17:24:23,110 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 44 [2022-02-20 17:24:23,110 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 17:24:23,110 INFO L514 BasicCegarLoop]: trace histogram [4, 3, 3, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 17:24:23,140 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 17:24:23,323 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable6,8 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 17:24:23,323 INFO L402 AbstractCegarLoop]: === Iteration 8 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 17:24:23,324 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 17:24:23,324 INFO L85 PathProgramCache]: Analyzing trace with hash -798356602, now seen corresponding path program 1 times [2022-02-20 17:24:23,324 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 17:24:23,324 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1287976427] [2022-02-20 17:24:23,324 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 17:24:23,324 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 17:24:23,333 ERROR L252 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-02-20 17:24:23,333 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [782746859] [2022-02-20 17:24:23,333 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 17:24:23,333 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 17:24:23,333 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 17:24:23,349 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 17:24:23,350 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 17:24:23,380 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 17:24:23,380 INFO L263 TraceCheckSpWp]: Trace formula consists of 114 conjuncts, 3 conjunts are in the unsatisfiable core [2022-02-20 17:24:23,392 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 17:24:23,392 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 17:24:23,523 INFO L290 TraceCheckUtils]: 0: Hoare triple {2597#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(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {2597#true} is VALID [2022-02-20 17:24:23,524 INFO L290 TraceCheckUtils]: 1: Hoare triple {2597#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~nondet5#1, main_#t~post7#1, main_#t~post8#1, main_#t~post6#1, main_~A~0#1, main_~R~0#1, main_~u~0#1, main_~v~0#1, main_~r~0#1;havoc main_~A~0#1;havoc main_~R~0#1;havoc main_~u~0#1;havoc main_~v~0#1;havoc main_~r~0#1;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_~A~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1;assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647;main_~R~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; {2597#true} is VALID [2022-02-20 17:24:23,524 INFO L272 TraceCheckUtils]: 2: Hoare triple {2597#true} call assume_abort_if_not((if (main_~R~0#1 - 1) * (main_~R~0#1 - 1) < main_~A~0#1 then 1 else 0)); {2597#true} is VALID [2022-02-20 17:24:23,524 INFO L290 TraceCheckUtils]: 3: Hoare triple {2597#true} ~cond := #in~cond; {2597#true} is VALID [2022-02-20 17:24:23,524 INFO L290 TraceCheckUtils]: 4: Hoare triple {2597#true} assume !(0 == ~cond); {2597#true} is VALID [2022-02-20 17:24:23,524 INFO L290 TraceCheckUtils]: 5: Hoare triple {2597#true} assume true; {2597#true} is VALID [2022-02-20 17:24:23,524 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {2597#true} {2597#true} #87#return; {2597#true} is VALID [2022-02-20 17:24:23,525 INFO L272 TraceCheckUtils]: 7: Hoare triple {2597#true} call assume_abort_if_not((if 1 == (if main_~A~0#1 < 0 && 0 != main_~A~0#1 % 2 then main_~A~0#1 % 2 - 2 else main_~A~0#1 % 2) then 1 else 0)); {2597#true} is VALID [2022-02-20 17:24:23,525 INFO L290 TraceCheckUtils]: 8: Hoare triple {2597#true} ~cond := #in~cond; {2597#true} is VALID [2022-02-20 17:24:23,525 INFO L290 TraceCheckUtils]: 9: Hoare triple {2597#true} assume !(0 == ~cond); {2597#true} is VALID [2022-02-20 17:24:23,525 INFO L290 TraceCheckUtils]: 10: Hoare triple {2597#true} assume true; {2597#true} is VALID [2022-02-20 17:24:23,525 INFO L284 TraceCheckUtils]: 11: Hoare quadruple {2597#true} {2597#true} #89#return; {2597#true} is VALID [2022-02-20 17:24:23,525 INFO L290 TraceCheckUtils]: 12: Hoare triple {2597#true} main_~u~0#1 := 1 + 2 * main_~R~0#1;main_~v~0#1 := 1;main_~r~0#1 := main_~R~0#1 * main_~R~0#1 - main_~A~0#1; {2597#true} is VALID [2022-02-20 17:24:23,525 INFO L290 TraceCheckUtils]: 13: Hoare triple {2597#true} main_#t~post6#1 := ~counter~0;~counter~0 := 1 + main_#t~post6#1; {2597#true} is VALID [2022-02-20 17:24:23,525 INFO L290 TraceCheckUtils]: 14: Hoare triple {2597#true} assume !!(main_#t~post6#1 < 5);havoc main_#t~post6#1; {2597#true} is VALID [2022-02-20 17:24:23,526 INFO L272 TraceCheckUtils]: 15: Hoare triple {2597#true} call __VERIFIER_assert((if 4 * (main_~A~0#1 + main_~r~0#1) == main_~u~0#1 * main_~u~0#1 - main_~v~0#1 * main_~v~0#1 - 2 * main_~u~0#1 + 2 * main_~v~0#1 then 1 else 0)); {2597#true} is VALID [2022-02-20 17:24:23,526 INFO L290 TraceCheckUtils]: 16: Hoare triple {2597#true} ~cond := #in~cond; {2597#true} is VALID [2022-02-20 17:24:23,526 INFO L290 TraceCheckUtils]: 17: Hoare triple {2597#true} assume !(0 == ~cond); {2597#true} is VALID [2022-02-20 17:24:23,526 INFO L290 TraceCheckUtils]: 18: Hoare triple {2597#true} assume true; {2597#true} is VALID [2022-02-20 17:24:23,526 INFO L284 TraceCheckUtils]: 19: Hoare quadruple {2597#true} {2597#true} #91#return; {2597#true} is VALID [2022-02-20 17:24:23,527 INFO L290 TraceCheckUtils]: 20: Hoare triple {2597#true} assume !!(0 != main_~r~0#1); {2662#(not (= |ULTIMATE.start_main_~r~0#1| 0))} is VALID [2022-02-20 17:24:23,527 INFO L290 TraceCheckUtils]: 21: Hoare triple {2662#(not (= |ULTIMATE.start_main_~r~0#1| 0))} main_#t~post7#1 := ~counter~0;~counter~0 := 1 + main_#t~post7#1; {2662#(not (= |ULTIMATE.start_main_~r~0#1| 0))} is VALID [2022-02-20 17:24:23,527 INFO L290 TraceCheckUtils]: 22: Hoare triple {2662#(not (= |ULTIMATE.start_main_~r~0#1| 0))} assume !!(main_#t~post7#1 < 5);havoc main_#t~post7#1; {2662#(not (= |ULTIMATE.start_main_~r~0#1| 0))} is VALID [2022-02-20 17:24:23,527 INFO L272 TraceCheckUtils]: 23: Hoare triple {2662#(not (= |ULTIMATE.start_main_~r~0#1| 0))} call __VERIFIER_assert((if 4 * (main_~A~0#1 + main_~r~0#1) == main_~u~0#1 * main_~u~0#1 - main_~v~0#1 * main_~v~0#1 - 2 * main_~u~0#1 + 2 * main_~v~0#1 then 1 else 0)); {2597#true} is VALID [2022-02-20 17:24:23,527 INFO L290 TraceCheckUtils]: 24: Hoare triple {2597#true} ~cond := #in~cond; {2597#true} is VALID [2022-02-20 17:24:23,528 INFO L290 TraceCheckUtils]: 25: Hoare triple {2597#true} assume !(0 == ~cond); {2597#true} is VALID [2022-02-20 17:24:23,528 INFO L290 TraceCheckUtils]: 26: Hoare triple {2597#true} assume true; {2597#true} is VALID [2022-02-20 17:24:23,528 INFO L284 TraceCheckUtils]: 27: Hoare quadruple {2597#true} {2662#(not (= |ULTIMATE.start_main_~r~0#1| 0))} #93#return; {2662#(not (= |ULTIMATE.start_main_~r~0#1| 0))} is VALID [2022-02-20 17:24:23,529 INFO L290 TraceCheckUtils]: 28: Hoare triple {2662#(not (= |ULTIMATE.start_main_~r~0#1| 0))} assume !(main_~r~0#1 > 0); {2687#(and (not (< 0 |ULTIMATE.start_main_~r~0#1|)) (not (= |ULTIMATE.start_main_~r~0#1| 0)))} is VALID [2022-02-20 17:24:23,529 INFO L290 TraceCheckUtils]: 29: Hoare triple {2687#(and (not (< 0 |ULTIMATE.start_main_~r~0#1|)) (not (= |ULTIMATE.start_main_~r~0#1| 0)))} main_#t~post8#1 := ~counter~0;~counter~0 := 1 + main_#t~post8#1; {2687#(and (not (< 0 |ULTIMATE.start_main_~r~0#1|)) (not (= |ULTIMATE.start_main_~r~0#1| 0)))} is VALID [2022-02-20 17:24:23,529 INFO L290 TraceCheckUtils]: 30: Hoare triple {2687#(and (not (< 0 |ULTIMATE.start_main_~r~0#1|)) (not (= |ULTIMATE.start_main_~r~0#1| 0)))} assume !!(main_#t~post8#1 < 5);havoc main_#t~post8#1; {2687#(and (not (< 0 |ULTIMATE.start_main_~r~0#1|)) (not (= |ULTIMATE.start_main_~r~0#1| 0)))} is VALID [2022-02-20 17:24:23,530 INFO L272 TraceCheckUtils]: 31: Hoare triple {2687#(and (not (< 0 |ULTIMATE.start_main_~r~0#1|)) (not (= |ULTIMATE.start_main_~r~0#1| 0)))} call __VERIFIER_assert((if 4 * (main_~A~0#1 + main_~r~0#1) == main_~u~0#1 * main_~u~0#1 - main_~v~0#1 * main_~v~0#1 - 2 * main_~u~0#1 + 2 * main_~v~0#1 then 1 else 0)); {2597#true} is VALID [2022-02-20 17:24:23,530 INFO L290 TraceCheckUtils]: 32: Hoare triple {2597#true} ~cond := #in~cond; {2597#true} is VALID [2022-02-20 17:24:23,530 INFO L290 TraceCheckUtils]: 33: Hoare triple {2597#true} assume !(0 == ~cond); {2597#true} is VALID [2022-02-20 17:24:23,530 INFO L290 TraceCheckUtils]: 34: Hoare triple {2597#true} assume true; {2597#true} is VALID [2022-02-20 17:24:23,535 INFO L284 TraceCheckUtils]: 35: Hoare quadruple {2597#true} {2687#(and (not (< 0 |ULTIMATE.start_main_~r~0#1|)) (not (= |ULTIMATE.start_main_~r~0#1| 0)))} #95#return; {2687#(and (not (< 0 |ULTIMATE.start_main_~r~0#1|)) (not (= |ULTIMATE.start_main_~r~0#1| 0)))} is VALID [2022-02-20 17:24:23,536 INFO L290 TraceCheckUtils]: 36: Hoare triple {2687#(and (not (< 0 |ULTIMATE.start_main_~r~0#1|)) (not (= |ULTIMATE.start_main_~r~0#1| 0)))} assume !(main_~r~0#1 < 0); {2598#false} is VALID [2022-02-20 17:24:23,536 INFO L290 TraceCheckUtils]: 37: Hoare triple {2598#false} main_#t~post6#1 := ~counter~0;~counter~0 := 1 + main_#t~post6#1; {2598#false} is VALID [2022-02-20 17:24:23,536 INFO L290 TraceCheckUtils]: 38: Hoare triple {2598#false} assume !(main_#t~post6#1 < 5);havoc main_#t~post6#1; {2598#false} is VALID [2022-02-20 17:24:23,536 INFO L272 TraceCheckUtils]: 39: Hoare triple {2598#false} call __VERIFIER_assert((if 4 * main_~A~0#1 == main_~u~0#1 * main_~u~0#1 - main_~v~0#1 * main_~v~0#1 - 2 * main_~u~0#1 + 2 * main_~v~0#1 then 1 else 0)); {2598#false} is VALID [2022-02-20 17:24:23,536 INFO L290 TraceCheckUtils]: 40: Hoare triple {2598#false} ~cond := #in~cond; {2598#false} is VALID [2022-02-20 17:24:23,536 INFO L290 TraceCheckUtils]: 41: Hoare triple {2598#false} assume 0 == ~cond; {2598#false} is VALID [2022-02-20 17:24:23,536 INFO L290 TraceCheckUtils]: 42: Hoare triple {2598#false} assume !false; {2598#false} is VALID [2022-02-20 17:24:23,536 INFO L134 CoverageAnalysis]: Checked inductivity of 24 backedges. 8 proven. 0 refuted. 0 times theorem prover too weak. 16 trivial. 0 not checked. [2022-02-20 17:24:23,537 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 17:24:23,537 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 17:24:23,537 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1287976427] [2022-02-20 17:24:23,537 WARN L317 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-02-20 17:24:23,537 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [782746859] [2022-02-20 17:24:23,537 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [782746859] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 17:24:23,537 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 17:24:23,537 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-02-20 17:24:23,537 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [490570128] [2022-02-20 17:24:23,537 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 17:24:23,538 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 5.75) internal successors, (23), 4 states have internal predecessors, (23), 4 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (5), 3 states have call predecessors, (5), 3 states have call successors, (5) Word has length 43 [2022-02-20 17:24:23,538 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 17:24:23,538 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 4 states, 4 states have (on average 5.75) internal successors, (23), 4 states have internal predecessors, (23), 4 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (5), 3 states have call predecessors, (5), 3 states have call successors, (5) [2022-02-20 17:24:23,574 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 17:24:23,574 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-02-20 17:24:23,574 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 17:24:23,574 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-02-20 17:24:23,575 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=6, Invalid=6, Unknown=0, NotChecked=0, Total=12 [2022-02-20 17:24:23,575 INFO L87 Difference]: Start difference. First operand 75 states and 91 transitions. Second operand has 4 states, 4 states have (on average 5.75) internal successors, (23), 4 states have internal predecessors, (23), 4 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (5), 3 states have call predecessors, (5), 3 states have call successors, (5) [2022-02-20 17:24:23,729 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:24:23,729 INFO L93 Difference]: Finished difference Result 128 states and 165 transitions. [2022-02-20 17:24:23,729 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-02-20 17:24:23,730 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 5.75) internal successors, (23), 4 states have internal predecessors, (23), 4 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (5), 3 states have call predecessors, (5), 3 states have call successors, (5) Word has length 43 [2022-02-20 17:24:23,730 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 17:24:23,730 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 5.75) internal successors, (23), 4 states have internal predecessors, (23), 4 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (5), 3 states have call predecessors, (5), 3 states have call successors, (5) [2022-02-20 17:24:23,731 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 104 transitions. [2022-02-20 17:24:23,731 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 5.75) internal successors, (23), 4 states have internal predecessors, (23), 4 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (5), 3 states have call predecessors, (5), 3 states have call successors, (5) [2022-02-20 17:24:23,732 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 104 transitions. [2022-02-20 17:24:23,733 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 104 transitions. [2022-02-20 17:24:23,798 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 17:24:23,800 INFO L225 Difference]: With dead ends: 128 [2022-02-20 17:24:23,800 INFO L226 Difference]: Without dead ends: 97 [2022-02-20 17:24:23,800 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 42 GetRequests, 40 SyntacticMatches, 0 SemanticMatches, 2 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=6, Invalid=6, Unknown=0, NotChecked=0, Total=12 [2022-02-20 17:24:23,801 INFO L933 BasicCegarLoop]: 55 mSDtfsCounter, 19 mSDsluCounter, 74 mSDsCounter, 0 mSdLazyCounter, 25 mSolverCounterSat, 2 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 23 SdHoareTripleChecker+Valid, 129 SdHoareTripleChecker+Invalid, 27 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 2 IncrementalHoareTripleChecker+Valid, 25 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 17:24:23,801 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [23 Valid, 129 Invalid, 27 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [2 Valid, 25 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 17:24:23,801 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 97 states. [2022-02-20 17:24:23,833 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 97 to 87. [2022-02-20 17:24:23,833 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 17:24:23,833 INFO L82 GeneralOperation]: Start isEquivalent. First operand 97 states. Second operand has 87 states, 64 states have (on average 1.21875) internal successors, (78), 65 states have internal predecessors, (78), 16 states have call successors, (16), 7 states have call predecessors, (16), 6 states have return successors, (15), 14 states have call predecessors, (15), 15 states have call successors, (15) [2022-02-20 17:24:23,833 INFO L74 IsIncluded]: Start isIncluded. First operand 97 states. Second operand has 87 states, 64 states have (on average 1.21875) internal successors, (78), 65 states have internal predecessors, (78), 16 states have call successors, (16), 7 states have call predecessors, (16), 6 states have return successors, (15), 14 states have call predecessors, (15), 15 states have call successors, (15) [2022-02-20 17:24:23,834 INFO L87 Difference]: Start difference. First operand 97 states. Second operand has 87 states, 64 states have (on average 1.21875) internal successors, (78), 65 states have internal predecessors, (78), 16 states have call successors, (16), 7 states have call predecessors, (16), 6 states have return successors, (15), 14 states have call predecessors, (15), 15 states have call successors, (15) [2022-02-20 17:24:23,836 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:24:23,836 INFO L93 Difference]: Finished difference Result 97 states and 124 transitions. [2022-02-20 17:24:23,836 INFO L276 IsEmpty]: Start isEmpty. Operand 97 states and 124 transitions. [2022-02-20 17:24:23,837 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 17:24:23,837 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 17:24:23,837 INFO L74 IsIncluded]: Start isIncluded. First operand has 87 states, 64 states have (on average 1.21875) internal successors, (78), 65 states have internal predecessors, (78), 16 states have call successors, (16), 7 states have call predecessors, (16), 6 states have return successors, (15), 14 states have call predecessors, (15), 15 states have call successors, (15) Second operand 97 states. [2022-02-20 17:24:23,837 INFO L87 Difference]: Start difference. First operand has 87 states, 64 states have (on average 1.21875) internal successors, (78), 65 states have internal predecessors, (78), 16 states have call successors, (16), 7 states have call predecessors, (16), 6 states have return successors, (15), 14 states have call predecessors, (15), 15 states have call successors, (15) Second operand 97 states. [2022-02-20 17:24:23,839 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:24:23,839 INFO L93 Difference]: Finished difference Result 97 states and 124 transitions. [2022-02-20 17:24:23,839 INFO L276 IsEmpty]: Start isEmpty. Operand 97 states and 124 transitions. [2022-02-20 17:24:23,840 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 17:24:23,840 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 17:24:23,840 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 17:24:23,840 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 17:24:23,841 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 87 states, 64 states have (on average 1.21875) internal successors, (78), 65 states have internal predecessors, (78), 16 states have call successors, (16), 7 states have call predecessors, (16), 6 states have return successors, (15), 14 states have call predecessors, (15), 15 states have call successors, (15) [2022-02-20 17:24:23,843 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 87 states to 87 states and 109 transitions. [2022-02-20 17:24:23,843 INFO L78 Accepts]: Start accepts. Automaton has 87 states and 109 transitions. Word has length 43 [2022-02-20 17:24:23,843 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 17:24:23,843 INFO L470 AbstractCegarLoop]: Abstraction has 87 states and 109 transitions. [2022-02-20 17:24:23,843 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 4 states have (on average 5.75) internal successors, (23), 4 states have internal predecessors, (23), 4 states have call successors, (6), 2 states have call predecessors, (6), 1 states have return successors, (5), 3 states have call predecessors, (5), 3 states have call successors, (5) [2022-02-20 17:24:23,843 INFO L276 IsEmpty]: Start isEmpty. Operand 87 states and 109 transitions. [2022-02-20 17:24:23,844 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 46 [2022-02-20 17:24:23,844 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 17:24:23,844 INFO L514 BasicCegarLoop]: trace histogram [4, 3, 3, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 17:24:23,862 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (9)] Forceful destruction successful, exit code 0 [2022-02-20 17:24:24,060 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,SelfDestructingSolverStorable7 [2022-02-20 17:24:24,060 INFO L402 AbstractCegarLoop]: === Iteration 9 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 17:24:24,060 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 17:24:24,060 INFO L85 PathProgramCache]: Analyzing trace with hash -1023958197, now seen corresponding path program 1 times [2022-02-20 17:24:24,060 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 17:24:24,060 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1517281460] [2022-02-20 17:24:24,060 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 17:24:24,061 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 17:24:24,068 ERROR L252 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-02-20 17:24:24,068 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [164508880] [2022-02-20 17:24:24,068 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 17:24:24,069 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 17:24:24,069 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 17:24:24,070 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 17:24:24,071 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 17:24:24,100 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 17:24:24,101 INFO L263 TraceCheckSpWp]: Trace formula consists of 123 conjuncts, 9 conjunts are in the unsatisfiable core [2022-02-20 17:24:24,107 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 17:24:24,108 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 17:24:24,285 INFO L290 TraceCheckUtils]: 0: Hoare triple {3221#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(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {3226#(<= ~counter~0 0)} is VALID [2022-02-20 17:24:24,285 INFO L290 TraceCheckUtils]: 1: Hoare triple {3226#(<= ~counter~0 0)} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~nondet5#1, main_#t~post7#1, main_#t~post8#1, main_#t~post6#1, main_~A~0#1, main_~R~0#1, main_~u~0#1, main_~v~0#1, main_~r~0#1;havoc main_~A~0#1;havoc main_~R~0#1;havoc main_~u~0#1;havoc main_~v~0#1;havoc main_~r~0#1;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_~A~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1;assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647;main_~R~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; {3226#(<= ~counter~0 0)} is VALID [2022-02-20 17:24:24,286 INFO L272 TraceCheckUtils]: 2: Hoare triple {3226#(<= ~counter~0 0)} call assume_abort_if_not((if (main_~R~0#1 - 1) * (main_~R~0#1 - 1) < main_~A~0#1 then 1 else 0)); {3226#(<= ~counter~0 0)} is VALID [2022-02-20 17:24:24,286 INFO L290 TraceCheckUtils]: 3: Hoare triple {3226#(<= ~counter~0 0)} ~cond := #in~cond; {3226#(<= ~counter~0 0)} is VALID [2022-02-20 17:24:24,287 INFO L290 TraceCheckUtils]: 4: Hoare triple {3226#(<= ~counter~0 0)} assume !(0 == ~cond); {3226#(<= ~counter~0 0)} is VALID [2022-02-20 17:24:24,287 INFO L290 TraceCheckUtils]: 5: Hoare triple {3226#(<= ~counter~0 0)} assume true; {3226#(<= ~counter~0 0)} is VALID [2022-02-20 17:24:24,287 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {3226#(<= ~counter~0 0)} {3226#(<= ~counter~0 0)} #87#return; {3226#(<= ~counter~0 0)} is VALID [2022-02-20 17:24:24,288 INFO L272 TraceCheckUtils]: 7: Hoare triple {3226#(<= ~counter~0 0)} call assume_abort_if_not((if 1 == (if main_~A~0#1 < 0 && 0 != main_~A~0#1 % 2 then main_~A~0#1 % 2 - 2 else main_~A~0#1 % 2) then 1 else 0)); {3226#(<= ~counter~0 0)} is VALID [2022-02-20 17:24:24,288 INFO L290 TraceCheckUtils]: 8: Hoare triple {3226#(<= ~counter~0 0)} ~cond := #in~cond; {3226#(<= ~counter~0 0)} is VALID [2022-02-20 17:24:24,288 INFO L290 TraceCheckUtils]: 9: Hoare triple {3226#(<= ~counter~0 0)} assume !(0 == ~cond); {3226#(<= ~counter~0 0)} is VALID [2022-02-20 17:24:24,288 INFO L290 TraceCheckUtils]: 10: Hoare triple {3226#(<= ~counter~0 0)} assume true; {3226#(<= ~counter~0 0)} is VALID [2022-02-20 17:24:24,289 INFO L284 TraceCheckUtils]: 11: Hoare quadruple {3226#(<= ~counter~0 0)} {3226#(<= ~counter~0 0)} #89#return; {3226#(<= ~counter~0 0)} is VALID [2022-02-20 17:24:24,289 INFO L290 TraceCheckUtils]: 12: Hoare triple {3226#(<= ~counter~0 0)} main_~u~0#1 := 1 + 2 * main_~R~0#1;main_~v~0#1 := 1;main_~r~0#1 := main_~R~0#1 * main_~R~0#1 - main_~A~0#1; {3226#(<= ~counter~0 0)} is VALID [2022-02-20 17:24:24,294 INFO L290 TraceCheckUtils]: 13: Hoare triple {3226#(<= ~counter~0 0)} main_#t~post6#1 := ~counter~0;~counter~0 := 1 + main_#t~post6#1; {3266#(<= ~counter~0 1)} is VALID [2022-02-20 17:24:24,294 INFO L290 TraceCheckUtils]: 14: Hoare triple {3266#(<= ~counter~0 1)} assume !!(main_#t~post6#1 < 5);havoc main_#t~post6#1; {3266#(<= ~counter~0 1)} is VALID [2022-02-20 17:24:24,295 INFO L272 TraceCheckUtils]: 15: Hoare triple {3266#(<= ~counter~0 1)} call __VERIFIER_assert((if 4 * (main_~A~0#1 + main_~r~0#1) == main_~u~0#1 * main_~u~0#1 - main_~v~0#1 * main_~v~0#1 - 2 * main_~u~0#1 + 2 * main_~v~0#1 then 1 else 0)); {3266#(<= ~counter~0 1)} is VALID [2022-02-20 17:24:24,295 INFO L290 TraceCheckUtils]: 16: Hoare triple {3266#(<= ~counter~0 1)} ~cond := #in~cond; {3266#(<= ~counter~0 1)} is VALID [2022-02-20 17:24:24,295 INFO L290 TraceCheckUtils]: 17: Hoare triple {3266#(<= ~counter~0 1)} assume !(0 == ~cond); {3266#(<= ~counter~0 1)} is VALID [2022-02-20 17:24:24,296 INFO L290 TraceCheckUtils]: 18: Hoare triple {3266#(<= ~counter~0 1)} assume true; {3266#(<= ~counter~0 1)} is VALID [2022-02-20 17:24:24,296 INFO L284 TraceCheckUtils]: 19: Hoare quadruple {3266#(<= ~counter~0 1)} {3266#(<= ~counter~0 1)} #91#return; {3266#(<= ~counter~0 1)} is VALID [2022-02-20 17:24:24,297 INFO L290 TraceCheckUtils]: 20: Hoare triple {3266#(<= ~counter~0 1)} assume !!(0 != main_~r~0#1); {3266#(<= ~counter~0 1)} is VALID [2022-02-20 17:24:24,297 INFO L290 TraceCheckUtils]: 21: Hoare triple {3266#(<= ~counter~0 1)} main_#t~post7#1 := ~counter~0;~counter~0 := 1 + main_#t~post7#1; {3291#(<= ~counter~0 2)} is VALID [2022-02-20 17:24:24,297 INFO L290 TraceCheckUtils]: 22: Hoare triple {3291#(<= ~counter~0 2)} assume !!(main_#t~post7#1 < 5);havoc main_#t~post7#1; {3291#(<= ~counter~0 2)} is VALID [2022-02-20 17:24:24,298 INFO L272 TraceCheckUtils]: 23: Hoare triple {3291#(<= ~counter~0 2)} call __VERIFIER_assert((if 4 * (main_~A~0#1 + main_~r~0#1) == main_~u~0#1 * main_~u~0#1 - main_~v~0#1 * main_~v~0#1 - 2 * main_~u~0#1 + 2 * main_~v~0#1 then 1 else 0)); {3291#(<= ~counter~0 2)} is VALID [2022-02-20 17:24:24,298 INFO L290 TraceCheckUtils]: 24: Hoare triple {3291#(<= ~counter~0 2)} ~cond := #in~cond; {3291#(<= ~counter~0 2)} is VALID [2022-02-20 17:24:24,299 INFO L290 TraceCheckUtils]: 25: Hoare triple {3291#(<= ~counter~0 2)} assume !(0 == ~cond); {3291#(<= ~counter~0 2)} is VALID [2022-02-20 17:24:24,299 INFO L290 TraceCheckUtils]: 26: Hoare triple {3291#(<= ~counter~0 2)} assume true; {3291#(<= ~counter~0 2)} is VALID [2022-02-20 17:24:24,300 INFO L284 TraceCheckUtils]: 27: Hoare quadruple {3291#(<= ~counter~0 2)} {3291#(<= ~counter~0 2)} #93#return; {3291#(<= ~counter~0 2)} is VALID [2022-02-20 17:24:24,300 INFO L290 TraceCheckUtils]: 28: Hoare triple {3291#(<= ~counter~0 2)} assume !(main_~r~0#1 > 0); {3291#(<= ~counter~0 2)} is VALID [2022-02-20 17:24:24,301 INFO L290 TraceCheckUtils]: 29: Hoare triple {3291#(<= ~counter~0 2)} main_#t~post8#1 := ~counter~0;~counter~0 := 1 + main_#t~post8#1; {3316#(<= ~counter~0 3)} is VALID [2022-02-20 17:24:24,301 INFO L290 TraceCheckUtils]: 30: Hoare triple {3316#(<= ~counter~0 3)} assume !!(main_#t~post8#1 < 5);havoc main_#t~post8#1; {3316#(<= ~counter~0 3)} is VALID [2022-02-20 17:24:24,302 INFO L272 TraceCheckUtils]: 31: Hoare triple {3316#(<= ~counter~0 3)} call __VERIFIER_assert((if 4 * (main_~A~0#1 + main_~r~0#1) == main_~u~0#1 * main_~u~0#1 - main_~v~0#1 * main_~v~0#1 - 2 * main_~u~0#1 + 2 * main_~v~0#1 then 1 else 0)); {3316#(<= ~counter~0 3)} is VALID [2022-02-20 17:24:24,302 INFO L290 TraceCheckUtils]: 32: Hoare triple {3316#(<= ~counter~0 3)} ~cond := #in~cond; {3316#(<= ~counter~0 3)} is VALID [2022-02-20 17:24:24,302 INFO L290 TraceCheckUtils]: 33: Hoare triple {3316#(<= ~counter~0 3)} assume !(0 == ~cond); {3316#(<= ~counter~0 3)} is VALID [2022-02-20 17:24:24,303 INFO L290 TraceCheckUtils]: 34: Hoare triple {3316#(<= ~counter~0 3)} assume true; {3316#(<= ~counter~0 3)} is VALID [2022-02-20 17:24:24,303 INFO L284 TraceCheckUtils]: 35: Hoare quadruple {3316#(<= ~counter~0 3)} {3316#(<= ~counter~0 3)} #95#return; {3316#(<= ~counter~0 3)} is VALID [2022-02-20 17:24:24,304 INFO L290 TraceCheckUtils]: 36: Hoare triple {3316#(<= ~counter~0 3)} assume !!(main_~r~0#1 < 0);main_~r~0#1 := main_~r~0#1 + main_~u~0#1;main_~u~0#1 := 2 + main_~u~0#1; {3316#(<= ~counter~0 3)} is VALID [2022-02-20 17:24:24,304 INFO L290 TraceCheckUtils]: 37: Hoare triple {3316#(<= ~counter~0 3)} main_#t~post8#1 := ~counter~0;~counter~0 := 1 + main_#t~post8#1; {3341#(<= |ULTIMATE.start_main_#t~post8#1| 3)} is VALID [2022-02-20 17:24:24,305 INFO L290 TraceCheckUtils]: 38: Hoare triple {3341#(<= |ULTIMATE.start_main_#t~post8#1| 3)} assume !(main_#t~post8#1 < 5);havoc main_#t~post8#1; {3222#false} is VALID [2022-02-20 17:24:24,305 INFO L290 TraceCheckUtils]: 39: Hoare triple {3222#false} main_#t~post6#1 := ~counter~0;~counter~0 := 1 + main_#t~post6#1; {3222#false} is VALID [2022-02-20 17:24:24,305 INFO L290 TraceCheckUtils]: 40: Hoare triple {3222#false} assume !(main_#t~post6#1 < 5);havoc main_#t~post6#1; {3222#false} is VALID [2022-02-20 17:24:24,305 INFO L272 TraceCheckUtils]: 41: Hoare triple {3222#false} call __VERIFIER_assert((if 4 * main_~A~0#1 == main_~u~0#1 * main_~u~0#1 - main_~v~0#1 * main_~v~0#1 - 2 * main_~u~0#1 + 2 * main_~v~0#1 then 1 else 0)); {3222#false} is VALID [2022-02-20 17:24:24,305 INFO L290 TraceCheckUtils]: 42: Hoare triple {3222#false} ~cond := #in~cond; {3222#false} is VALID [2022-02-20 17:24:24,305 INFO L290 TraceCheckUtils]: 43: Hoare triple {3222#false} assume 0 == ~cond; {3222#false} is VALID [2022-02-20 17:24:24,305 INFO L290 TraceCheckUtils]: 44: Hoare triple {3222#false} assume !false; {3222#false} is VALID [2022-02-20 17:24:24,306 INFO L134 CoverageAnalysis]: Checked inductivity of 26 backedges. 8 proven. 14 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-02-20 17:24:24,306 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 17:24:24,502 INFO L290 TraceCheckUtils]: 44: Hoare triple {3222#false} assume !false; {3222#false} is VALID [2022-02-20 17:24:24,502 INFO L290 TraceCheckUtils]: 43: Hoare triple {3222#false} assume 0 == ~cond; {3222#false} is VALID [2022-02-20 17:24:24,502 INFO L290 TraceCheckUtils]: 42: Hoare triple {3222#false} ~cond := #in~cond; {3222#false} is VALID [2022-02-20 17:24:24,502 INFO L272 TraceCheckUtils]: 41: Hoare triple {3222#false} call __VERIFIER_assert((if 4 * main_~A~0#1 == main_~u~0#1 * main_~u~0#1 - main_~v~0#1 * main_~v~0#1 - 2 * main_~u~0#1 + 2 * main_~v~0#1 then 1 else 0)); {3222#false} is VALID [2022-02-20 17:24:24,502 INFO L290 TraceCheckUtils]: 40: Hoare triple {3222#false} assume !(main_#t~post6#1 < 5);havoc main_#t~post6#1; {3222#false} is VALID [2022-02-20 17:24:24,502 INFO L290 TraceCheckUtils]: 39: Hoare triple {3222#false} main_#t~post6#1 := ~counter~0;~counter~0 := 1 + main_#t~post6#1; {3222#false} is VALID [2022-02-20 17:24:24,505 INFO L290 TraceCheckUtils]: 38: Hoare triple {3381#(< |ULTIMATE.start_main_#t~post8#1| 5)} assume !(main_#t~post8#1 < 5);havoc main_#t~post8#1; {3222#false} is VALID [2022-02-20 17:24:24,505 INFO L290 TraceCheckUtils]: 37: Hoare triple {3385#(< ~counter~0 5)} main_#t~post8#1 := ~counter~0;~counter~0 := 1 + main_#t~post8#1; {3381#(< |ULTIMATE.start_main_#t~post8#1| 5)} is VALID [2022-02-20 17:24:24,505 INFO L290 TraceCheckUtils]: 36: Hoare triple {3385#(< ~counter~0 5)} assume !!(main_~r~0#1 < 0);main_~r~0#1 := main_~r~0#1 + main_~u~0#1;main_~u~0#1 := 2 + main_~u~0#1; {3385#(< ~counter~0 5)} is VALID [2022-02-20 17:24:24,506 INFO L284 TraceCheckUtils]: 35: Hoare quadruple {3221#true} {3385#(< ~counter~0 5)} #95#return; {3385#(< ~counter~0 5)} is VALID [2022-02-20 17:24:24,506 INFO L290 TraceCheckUtils]: 34: Hoare triple {3221#true} assume true; {3221#true} is VALID [2022-02-20 17:24:24,506 INFO L290 TraceCheckUtils]: 33: Hoare triple {3221#true} assume !(0 == ~cond); {3221#true} is VALID [2022-02-20 17:24:24,506 INFO L290 TraceCheckUtils]: 32: Hoare triple {3221#true} ~cond := #in~cond; {3221#true} is VALID [2022-02-20 17:24:24,506 INFO L272 TraceCheckUtils]: 31: Hoare triple {3385#(< ~counter~0 5)} call __VERIFIER_assert((if 4 * (main_~A~0#1 + main_~r~0#1) == main_~u~0#1 * main_~u~0#1 - main_~v~0#1 * main_~v~0#1 - 2 * main_~u~0#1 + 2 * main_~v~0#1 then 1 else 0)); {3221#true} is VALID [2022-02-20 17:24:24,506 INFO L290 TraceCheckUtils]: 30: Hoare triple {3385#(< ~counter~0 5)} assume !!(main_#t~post8#1 < 5);havoc main_#t~post8#1; {3385#(< ~counter~0 5)} is VALID [2022-02-20 17:24:24,507 INFO L290 TraceCheckUtils]: 29: Hoare triple {3316#(<= ~counter~0 3)} main_#t~post8#1 := ~counter~0;~counter~0 := 1 + main_#t~post8#1; {3385#(< ~counter~0 5)} is VALID [2022-02-20 17:24:24,507 INFO L290 TraceCheckUtils]: 28: Hoare triple {3316#(<= ~counter~0 3)} assume !(main_~r~0#1 > 0); {3316#(<= ~counter~0 3)} is VALID [2022-02-20 17:24:24,507 INFO L284 TraceCheckUtils]: 27: Hoare quadruple {3221#true} {3316#(<= ~counter~0 3)} #93#return; {3316#(<= ~counter~0 3)} is VALID [2022-02-20 17:24:24,507 INFO L290 TraceCheckUtils]: 26: Hoare triple {3221#true} assume true; {3221#true} is VALID [2022-02-20 17:24:24,508 INFO L290 TraceCheckUtils]: 25: Hoare triple {3221#true} assume !(0 == ~cond); {3221#true} is VALID [2022-02-20 17:24:24,508 INFO L290 TraceCheckUtils]: 24: Hoare triple {3221#true} ~cond := #in~cond; {3221#true} is VALID [2022-02-20 17:24:24,508 INFO L272 TraceCheckUtils]: 23: Hoare triple {3316#(<= ~counter~0 3)} call __VERIFIER_assert((if 4 * (main_~A~0#1 + main_~r~0#1) == main_~u~0#1 * main_~u~0#1 - main_~v~0#1 * main_~v~0#1 - 2 * main_~u~0#1 + 2 * main_~v~0#1 then 1 else 0)); {3221#true} is VALID [2022-02-20 17:24:24,508 INFO L290 TraceCheckUtils]: 22: Hoare triple {3316#(<= ~counter~0 3)} assume !!(main_#t~post7#1 < 5);havoc main_#t~post7#1; {3316#(<= ~counter~0 3)} is VALID [2022-02-20 17:24:24,508 INFO L290 TraceCheckUtils]: 21: Hoare triple {3291#(<= ~counter~0 2)} main_#t~post7#1 := ~counter~0;~counter~0 := 1 + main_#t~post7#1; {3316#(<= ~counter~0 3)} is VALID [2022-02-20 17:24:24,508 INFO L290 TraceCheckUtils]: 20: Hoare triple {3291#(<= ~counter~0 2)} assume !!(0 != main_~r~0#1); {3291#(<= ~counter~0 2)} is VALID [2022-02-20 17:24:24,509 INFO L284 TraceCheckUtils]: 19: Hoare quadruple {3221#true} {3291#(<= ~counter~0 2)} #91#return; {3291#(<= ~counter~0 2)} is VALID [2022-02-20 17:24:24,509 INFO L290 TraceCheckUtils]: 18: Hoare triple {3221#true} assume true; {3221#true} is VALID [2022-02-20 17:24:24,509 INFO L290 TraceCheckUtils]: 17: Hoare triple {3221#true} assume !(0 == ~cond); {3221#true} is VALID [2022-02-20 17:24:24,509 INFO L290 TraceCheckUtils]: 16: Hoare triple {3221#true} ~cond := #in~cond; {3221#true} is VALID [2022-02-20 17:24:24,509 INFO L272 TraceCheckUtils]: 15: Hoare triple {3291#(<= ~counter~0 2)} call __VERIFIER_assert((if 4 * (main_~A~0#1 + main_~r~0#1) == main_~u~0#1 * main_~u~0#1 - main_~v~0#1 * main_~v~0#1 - 2 * main_~u~0#1 + 2 * main_~v~0#1 then 1 else 0)); {3221#true} is VALID [2022-02-20 17:24:24,509 INFO L290 TraceCheckUtils]: 14: Hoare triple {3291#(<= ~counter~0 2)} assume !!(main_#t~post6#1 < 5);havoc main_#t~post6#1; {3291#(<= ~counter~0 2)} is VALID [2022-02-20 17:24:24,510 INFO L290 TraceCheckUtils]: 13: Hoare triple {3266#(<= ~counter~0 1)} main_#t~post6#1 := ~counter~0;~counter~0 := 1 + main_#t~post6#1; {3291#(<= ~counter~0 2)} is VALID [2022-02-20 17:24:24,510 INFO L290 TraceCheckUtils]: 12: Hoare triple {3266#(<= ~counter~0 1)} main_~u~0#1 := 1 + 2 * main_~R~0#1;main_~v~0#1 := 1;main_~r~0#1 := main_~R~0#1 * main_~R~0#1 - main_~A~0#1; {3266#(<= ~counter~0 1)} is VALID [2022-02-20 17:24:24,510 INFO L284 TraceCheckUtils]: 11: Hoare quadruple {3221#true} {3266#(<= ~counter~0 1)} #89#return; {3266#(<= ~counter~0 1)} is VALID [2022-02-20 17:24:24,511 INFO L290 TraceCheckUtils]: 10: Hoare triple {3221#true} assume true; {3221#true} is VALID [2022-02-20 17:24:24,511 INFO L290 TraceCheckUtils]: 9: Hoare triple {3221#true} assume !(0 == ~cond); {3221#true} is VALID [2022-02-20 17:24:24,511 INFO L290 TraceCheckUtils]: 8: Hoare triple {3221#true} ~cond := #in~cond; {3221#true} is VALID [2022-02-20 17:24:24,511 INFO L272 TraceCheckUtils]: 7: Hoare triple {3266#(<= ~counter~0 1)} call assume_abort_if_not((if 1 == (if main_~A~0#1 < 0 && 0 != main_~A~0#1 % 2 then main_~A~0#1 % 2 - 2 else main_~A~0#1 % 2) then 1 else 0)); {3221#true} is VALID [2022-02-20 17:24:24,511 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {3221#true} {3266#(<= ~counter~0 1)} #87#return; {3266#(<= ~counter~0 1)} is VALID [2022-02-20 17:24:24,511 INFO L290 TraceCheckUtils]: 5: Hoare triple {3221#true} assume true; {3221#true} is VALID [2022-02-20 17:24:24,511 INFO L290 TraceCheckUtils]: 4: Hoare triple {3221#true} assume !(0 == ~cond); {3221#true} is VALID [2022-02-20 17:24:24,511 INFO L290 TraceCheckUtils]: 3: Hoare triple {3221#true} ~cond := #in~cond; {3221#true} is VALID [2022-02-20 17:24:24,511 INFO L272 TraceCheckUtils]: 2: Hoare triple {3266#(<= ~counter~0 1)} call assume_abort_if_not((if (main_~R~0#1 - 1) * (main_~R~0#1 - 1) < main_~A~0#1 then 1 else 0)); {3221#true} is VALID [2022-02-20 17:24:24,516 INFO L290 TraceCheckUtils]: 1: Hoare triple {3266#(<= ~counter~0 1)} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~nondet5#1, main_#t~post7#1, main_#t~post8#1, main_#t~post6#1, main_~A~0#1, main_~R~0#1, main_~u~0#1, main_~v~0#1, main_~r~0#1;havoc main_~A~0#1;havoc main_~R~0#1;havoc main_~u~0#1;havoc main_~v~0#1;havoc main_~r~0#1;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_~A~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1;assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647;main_~R~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; {3266#(<= ~counter~0 1)} is VALID [2022-02-20 17:24:24,516 INFO L290 TraceCheckUtils]: 0: Hoare triple {3221#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(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {3266#(<= ~counter~0 1)} is VALID [2022-02-20 17:24:24,517 INFO L134 CoverageAnalysis]: Checked inductivity of 26 backedges. 8 proven. 2 refuted. 0 times theorem prover too weak. 16 trivial. 0 not checked. [2022-02-20 17:24:24,517 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 17:24:24,517 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1517281460] [2022-02-20 17:24:24,517 WARN L317 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-02-20 17:24:24,517 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [164508880] [2022-02-20 17:24:24,517 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [164508880] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 17:24:24,517 INFO L191 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-02-20 17:24:24,517 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [6, 7] total 9 [2022-02-20 17:24:24,517 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [738290238] [2022-02-20 17:24:24,517 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-02-20 17:24:24,518 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 5.666666666666667) internal successors, (51), 9 states have internal predecessors, (51), 6 states have call successors, (11), 6 states have call predecessors, (11), 5 states have return successors, (10), 5 states have call predecessors, (10), 5 states have call successors, (10) Word has length 45 [2022-02-20 17:24:24,518 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 17:24:24,518 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 9 states, 9 states have (on average 5.666666666666667) internal successors, (51), 9 states have internal predecessors, (51), 6 states have call successors, (11), 6 states have call predecessors, (11), 5 states have return successors, (10), 5 states have call predecessors, (10), 5 states have call successors, (10) [2022-02-20 17:24:24,562 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 72 edges. 72 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 17:24:24,562 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-02-20 17:24:24,562 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 17:24:24,562 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-02-20 17:24:24,562 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=26, Invalid=46, Unknown=0, NotChecked=0, Total=72 [2022-02-20 17:24:24,562 INFO L87 Difference]: Start difference. First operand 87 states and 109 transitions. Second operand has 9 states, 9 states have (on average 5.666666666666667) internal successors, (51), 9 states have internal predecessors, (51), 6 states have call successors, (11), 6 states have call predecessors, (11), 5 states have return successors, (10), 5 states have call predecessors, (10), 5 states have call successors, (10) [2022-02-20 17:24:24,805 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:24:24,805 INFO L93 Difference]: Finished difference Result 128 states and 167 transitions. [2022-02-20 17:24:24,805 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-02-20 17:24:24,805 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 5.666666666666667) internal successors, (51), 9 states have internal predecessors, (51), 6 states have call successors, (11), 6 states have call predecessors, (11), 5 states have return successors, (10), 5 states have call predecessors, (10), 5 states have call successors, (10) Word has length 45 [2022-02-20 17:24:24,806 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 17:24:24,806 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 5.666666666666667) internal successors, (51), 9 states have internal predecessors, (51), 6 states have call successors, (11), 6 states have call predecessors, (11), 5 states have return successors, (10), 5 states have call predecessors, (10), 5 states have call successors, (10) [2022-02-20 17:24:24,807 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 114 transitions. [2022-02-20 17:24:24,807 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 5.666666666666667) internal successors, (51), 9 states have internal predecessors, (51), 6 states have call successors, (11), 6 states have call predecessors, (11), 5 states have return successors, (10), 5 states have call predecessors, (10), 5 states have call successors, (10) [2022-02-20 17:24:24,808 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 114 transitions. [2022-02-20 17:24:24,808 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 10 states and 114 transitions. [2022-02-20 17:24:24,879 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 114 edges. 114 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 17:24:24,880 INFO L225 Difference]: With dead ends: 128 [2022-02-20 17:24:24,880 INFO L226 Difference]: Without dead ends: 91 [2022-02-20 17:24:24,880 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 90 GetRequests, 80 SyntacticMatches, 1 SemanticMatches, 9 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 9 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=38, Invalid=72, Unknown=0, NotChecked=0, Total=110 [2022-02-20 17:24:24,881 INFO L933 BasicCegarLoop]: 38 mSDtfsCounter, 39 mSDsluCounter, 137 mSDsCounter, 0 mSdLazyCounter, 54 mSolverCounterSat, 21 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 39 SdHoareTripleChecker+Valid, 175 SdHoareTripleChecker+Invalid, 75 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 21 IncrementalHoareTripleChecker+Valid, 54 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-02-20 17:24:24,881 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [39 Valid, 175 Invalid, 75 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [21 Valid, 54 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-02-20 17:24:24,881 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 91 states. [2022-02-20 17:24:24,918 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 91 to 90. [2022-02-20 17:24:24,918 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 17:24:24,918 INFO L82 GeneralOperation]: Start isEquivalent. First operand 91 states. Second operand has 90 states, 67 states have (on average 1.208955223880597) internal successors, (81), 67 states have internal predecessors, (81), 16 states have call successors, (16), 7 states have call predecessors, (16), 6 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) [2022-02-20 17:24:24,918 INFO L74 IsIncluded]: Start isIncluded. First operand 91 states. Second operand has 90 states, 67 states have (on average 1.208955223880597) internal successors, (81), 67 states have internal predecessors, (81), 16 states have call successors, (16), 7 states have call predecessors, (16), 6 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) [2022-02-20 17:24:24,918 INFO L87 Difference]: Start difference. First operand 91 states. Second operand has 90 states, 67 states have (on average 1.208955223880597) internal successors, (81), 67 states have internal predecessors, (81), 16 states have call successors, (16), 7 states have call predecessors, (16), 6 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) [2022-02-20 17:24:24,920 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:24:24,920 INFO L93 Difference]: Finished difference Result 91 states and 113 transitions. [2022-02-20 17:24:24,920 INFO L276 IsEmpty]: Start isEmpty. Operand 91 states and 113 transitions. [2022-02-20 17:24:24,921 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 17:24:24,921 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 17:24:24,921 INFO L74 IsIncluded]: Start isIncluded. First operand has 90 states, 67 states have (on average 1.208955223880597) internal successors, (81), 67 states have internal predecessors, (81), 16 states have call successors, (16), 7 states have call predecessors, (16), 6 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) Second operand 91 states. [2022-02-20 17:24:24,921 INFO L87 Difference]: Start difference. First operand has 90 states, 67 states have (on average 1.208955223880597) internal successors, (81), 67 states have internal predecessors, (81), 16 states have call successors, (16), 7 states have call predecessors, (16), 6 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) Second operand 91 states. [2022-02-20 17:24:24,923 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:24:24,923 INFO L93 Difference]: Finished difference Result 91 states and 113 transitions. [2022-02-20 17:24:24,925 INFO L276 IsEmpty]: Start isEmpty. Operand 91 states and 113 transitions. [2022-02-20 17:24:24,925 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 17:24:24,925 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 17:24:24,926 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 17:24:24,926 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 17:24:24,927 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 90 states, 67 states have (on average 1.208955223880597) internal successors, (81), 67 states have internal predecessors, (81), 16 states have call successors, (16), 7 states have call predecessors, (16), 6 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) [2022-02-20 17:24:24,934 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 90 states to 90 states and 112 transitions. [2022-02-20 17:24:24,934 INFO L78 Accepts]: Start accepts. Automaton has 90 states and 112 transitions. Word has length 45 [2022-02-20 17:24:24,934 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 17:24:24,934 INFO L470 AbstractCegarLoop]: Abstraction has 90 states and 112 transitions. [2022-02-20 17:24:24,935 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 9 states have (on average 5.666666666666667) internal successors, (51), 9 states have internal predecessors, (51), 6 states have call successors, (11), 6 states have call predecessors, (11), 5 states have return successors, (10), 5 states have call predecessors, (10), 5 states have call successors, (10) [2022-02-20 17:24:24,935 INFO L276 IsEmpty]: Start isEmpty. Operand 90 states and 112 transitions. [2022-02-20 17:24:24,935 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 52 [2022-02-20 17:24:24,936 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 17:24:24,936 INFO L514 BasicCegarLoop]: trace histogram [5, 4, 4, 2, 2, 2, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 17:24:24,969 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 17:24:25,151 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable8,10 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 17:24:25,151 INFO L402 AbstractCegarLoop]: === Iteration 10 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 17:24:25,152 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 17:24:25,152 INFO L85 PathProgramCache]: Analyzing trace with hash -1104536814, now seen corresponding path program 1 times [2022-02-20 17:24:25,152 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 17:24:25,152 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2088085202] [2022-02-20 17:24:25,152 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 17:24:25,152 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 17:24:25,161 ERROR L252 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-02-20 17:24:25,161 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [500504054] [2022-02-20 17:24:25,161 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 17:24:25,161 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 17:24:25,162 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 17:24:25,162 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 17:24:25,166 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 17:24:25,196 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 17:24:25,197 INFO L263 TraceCheckSpWp]: Trace formula consists of 133 conjuncts, 11 conjunts are in the unsatisfiable core [2022-02-20 17:24:25,204 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 17:24:25,206 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 17:24:25,438 INFO L290 TraceCheckUtils]: 0: Hoare triple {3982#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(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {3987#(<= ~counter~0 0)} is VALID [2022-02-20 17:24:25,439 INFO L290 TraceCheckUtils]: 1: Hoare triple {3987#(<= ~counter~0 0)} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~nondet5#1, main_#t~post7#1, main_#t~post8#1, main_#t~post6#1, main_~A~0#1, main_~R~0#1, main_~u~0#1, main_~v~0#1, main_~r~0#1;havoc main_~A~0#1;havoc main_~R~0#1;havoc main_~u~0#1;havoc main_~v~0#1;havoc main_~r~0#1;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_~A~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1;assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647;main_~R~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; {3987#(<= ~counter~0 0)} is VALID [2022-02-20 17:24:25,439 INFO L272 TraceCheckUtils]: 2: Hoare triple {3987#(<= ~counter~0 0)} call assume_abort_if_not((if (main_~R~0#1 - 1) * (main_~R~0#1 - 1) < main_~A~0#1 then 1 else 0)); {3987#(<= ~counter~0 0)} is VALID [2022-02-20 17:24:25,439 INFO L290 TraceCheckUtils]: 3: Hoare triple {3987#(<= ~counter~0 0)} ~cond := #in~cond; {3987#(<= ~counter~0 0)} is VALID [2022-02-20 17:24:25,440 INFO L290 TraceCheckUtils]: 4: Hoare triple {3987#(<= ~counter~0 0)} assume !(0 == ~cond); {3987#(<= ~counter~0 0)} is VALID [2022-02-20 17:24:25,440 INFO L290 TraceCheckUtils]: 5: Hoare triple {3987#(<= ~counter~0 0)} assume true; {3987#(<= ~counter~0 0)} is VALID [2022-02-20 17:24:25,440 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {3987#(<= ~counter~0 0)} {3987#(<= ~counter~0 0)} #87#return; {3987#(<= ~counter~0 0)} is VALID [2022-02-20 17:24:25,441 INFO L272 TraceCheckUtils]: 7: Hoare triple {3987#(<= ~counter~0 0)} call assume_abort_if_not((if 1 == (if main_~A~0#1 < 0 && 0 != main_~A~0#1 % 2 then main_~A~0#1 % 2 - 2 else main_~A~0#1 % 2) then 1 else 0)); {3987#(<= ~counter~0 0)} is VALID [2022-02-20 17:24:25,441 INFO L290 TraceCheckUtils]: 8: Hoare triple {3987#(<= ~counter~0 0)} ~cond := #in~cond; {3987#(<= ~counter~0 0)} is VALID [2022-02-20 17:24:25,441 INFO L290 TraceCheckUtils]: 9: Hoare triple {3987#(<= ~counter~0 0)} assume !(0 == ~cond); {3987#(<= ~counter~0 0)} is VALID [2022-02-20 17:24:25,441 INFO L290 TraceCheckUtils]: 10: Hoare triple {3987#(<= ~counter~0 0)} assume true; {3987#(<= ~counter~0 0)} is VALID [2022-02-20 17:24:25,442 INFO L284 TraceCheckUtils]: 11: Hoare quadruple {3987#(<= ~counter~0 0)} {3987#(<= ~counter~0 0)} #89#return; {3987#(<= ~counter~0 0)} is VALID [2022-02-20 17:24:25,442 INFO L290 TraceCheckUtils]: 12: Hoare triple {3987#(<= ~counter~0 0)} main_~u~0#1 := 1 + 2 * main_~R~0#1;main_~v~0#1 := 1;main_~r~0#1 := main_~R~0#1 * main_~R~0#1 - main_~A~0#1; {3987#(<= ~counter~0 0)} is VALID [2022-02-20 17:24:25,443 INFO L290 TraceCheckUtils]: 13: Hoare triple {3987#(<= ~counter~0 0)} main_#t~post6#1 := ~counter~0;~counter~0 := 1 + main_#t~post6#1; {4027#(<= ~counter~0 1)} is VALID [2022-02-20 17:24:25,443 INFO L290 TraceCheckUtils]: 14: Hoare triple {4027#(<= ~counter~0 1)} assume !!(main_#t~post6#1 < 5);havoc main_#t~post6#1; {4027#(<= ~counter~0 1)} is VALID [2022-02-20 17:24:25,443 INFO L272 TraceCheckUtils]: 15: Hoare triple {4027#(<= ~counter~0 1)} call __VERIFIER_assert((if 4 * (main_~A~0#1 + main_~r~0#1) == main_~u~0#1 * main_~u~0#1 - main_~v~0#1 * main_~v~0#1 - 2 * main_~u~0#1 + 2 * main_~v~0#1 then 1 else 0)); {4027#(<= ~counter~0 1)} is VALID [2022-02-20 17:24:25,443 INFO L290 TraceCheckUtils]: 16: Hoare triple {4027#(<= ~counter~0 1)} ~cond := #in~cond; {4027#(<= ~counter~0 1)} is VALID [2022-02-20 17:24:25,444 INFO L290 TraceCheckUtils]: 17: Hoare triple {4027#(<= ~counter~0 1)} assume !(0 == ~cond); {4027#(<= ~counter~0 1)} is VALID [2022-02-20 17:24:25,444 INFO L290 TraceCheckUtils]: 18: Hoare triple {4027#(<= ~counter~0 1)} assume true; {4027#(<= ~counter~0 1)} is VALID [2022-02-20 17:24:25,444 INFO L284 TraceCheckUtils]: 19: Hoare quadruple {4027#(<= ~counter~0 1)} {4027#(<= ~counter~0 1)} #91#return; {4027#(<= ~counter~0 1)} is VALID [2022-02-20 17:24:25,445 INFO L290 TraceCheckUtils]: 20: Hoare triple {4027#(<= ~counter~0 1)} assume !!(0 != main_~r~0#1); {4027#(<= ~counter~0 1)} is VALID [2022-02-20 17:24:25,445 INFO L290 TraceCheckUtils]: 21: Hoare triple {4027#(<= ~counter~0 1)} main_#t~post7#1 := ~counter~0;~counter~0 := 1 + main_#t~post7#1; {4052#(<= ~counter~0 2)} is VALID [2022-02-20 17:24:25,445 INFO L290 TraceCheckUtils]: 22: Hoare triple {4052#(<= ~counter~0 2)} assume !!(main_#t~post7#1 < 5);havoc main_#t~post7#1; {4052#(<= ~counter~0 2)} is VALID [2022-02-20 17:24:25,446 INFO L272 TraceCheckUtils]: 23: Hoare triple {4052#(<= ~counter~0 2)} call __VERIFIER_assert((if 4 * (main_~A~0#1 + main_~r~0#1) == main_~u~0#1 * main_~u~0#1 - main_~v~0#1 * main_~v~0#1 - 2 * main_~u~0#1 + 2 * main_~v~0#1 then 1 else 0)); {4052#(<= ~counter~0 2)} is VALID [2022-02-20 17:24:25,446 INFO L290 TraceCheckUtils]: 24: Hoare triple {4052#(<= ~counter~0 2)} ~cond := #in~cond; {4052#(<= ~counter~0 2)} is VALID [2022-02-20 17:24:25,446 INFO L290 TraceCheckUtils]: 25: Hoare triple {4052#(<= ~counter~0 2)} assume !(0 == ~cond); {4052#(<= ~counter~0 2)} is VALID [2022-02-20 17:24:25,447 INFO L290 TraceCheckUtils]: 26: Hoare triple {4052#(<= ~counter~0 2)} assume true; {4052#(<= ~counter~0 2)} is VALID [2022-02-20 17:24:25,447 INFO L284 TraceCheckUtils]: 27: Hoare quadruple {4052#(<= ~counter~0 2)} {4052#(<= ~counter~0 2)} #93#return; {4052#(<= ~counter~0 2)} is VALID [2022-02-20 17:24:25,447 INFO L290 TraceCheckUtils]: 28: Hoare triple {4052#(<= ~counter~0 2)} assume !(main_~r~0#1 > 0); {4052#(<= ~counter~0 2)} is VALID [2022-02-20 17:24:25,448 INFO L290 TraceCheckUtils]: 29: Hoare triple {4052#(<= ~counter~0 2)} main_#t~post8#1 := ~counter~0;~counter~0 := 1 + main_#t~post8#1; {4077#(<= ~counter~0 3)} is VALID [2022-02-20 17:24:25,448 INFO L290 TraceCheckUtils]: 30: Hoare triple {4077#(<= ~counter~0 3)} assume !!(main_#t~post8#1 < 5);havoc main_#t~post8#1; {4077#(<= ~counter~0 3)} is VALID [2022-02-20 17:24:25,448 INFO L272 TraceCheckUtils]: 31: Hoare triple {4077#(<= ~counter~0 3)} call __VERIFIER_assert((if 4 * (main_~A~0#1 + main_~r~0#1) == main_~u~0#1 * main_~u~0#1 - main_~v~0#1 * main_~v~0#1 - 2 * main_~u~0#1 + 2 * main_~v~0#1 then 1 else 0)); {4077#(<= ~counter~0 3)} is VALID [2022-02-20 17:24:25,449 INFO L290 TraceCheckUtils]: 32: Hoare triple {4077#(<= ~counter~0 3)} ~cond := #in~cond; {4077#(<= ~counter~0 3)} is VALID [2022-02-20 17:24:25,449 INFO L290 TraceCheckUtils]: 33: Hoare triple {4077#(<= ~counter~0 3)} assume !(0 == ~cond); {4077#(<= ~counter~0 3)} is VALID [2022-02-20 17:24:25,449 INFO L290 TraceCheckUtils]: 34: Hoare triple {4077#(<= ~counter~0 3)} assume true; {4077#(<= ~counter~0 3)} is VALID [2022-02-20 17:24:25,450 INFO L284 TraceCheckUtils]: 35: Hoare quadruple {4077#(<= ~counter~0 3)} {4077#(<= ~counter~0 3)} #95#return; {4077#(<= ~counter~0 3)} is VALID [2022-02-20 17:24:25,450 INFO L290 TraceCheckUtils]: 36: Hoare triple {4077#(<= ~counter~0 3)} assume !!(main_~r~0#1 < 0);main_~r~0#1 := main_~r~0#1 + main_~u~0#1;main_~u~0#1 := 2 + main_~u~0#1; {4077#(<= ~counter~0 3)} is VALID [2022-02-20 17:24:25,450 INFO L290 TraceCheckUtils]: 37: Hoare triple {4077#(<= ~counter~0 3)} main_#t~post8#1 := ~counter~0;~counter~0 := 1 + main_#t~post8#1; {4102#(<= ~counter~0 4)} is VALID [2022-02-20 17:24:25,451 INFO L290 TraceCheckUtils]: 38: Hoare triple {4102#(<= ~counter~0 4)} assume !!(main_#t~post8#1 < 5);havoc main_#t~post8#1; {4102#(<= ~counter~0 4)} is VALID [2022-02-20 17:24:25,451 INFO L272 TraceCheckUtils]: 39: Hoare triple {4102#(<= ~counter~0 4)} call __VERIFIER_assert((if 4 * (main_~A~0#1 + main_~r~0#1) == main_~u~0#1 * main_~u~0#1 - main_~v~0#1 * main_~v~0#1 - 2 * main_~u~0#1 + 2 * main_~v~0#1 then 1 else 0)); {4102#(<= ~counter~0 4)} is VALID [2022-02-20 17:24:25,451 INFO L290 TraceCheckUtils]: 40: Hoare triple {4102#(<= ~counter~0 4)} ~cond := #in~cond; {4102#(<= ~counter~0 4)} is VALID [2022-02-20 17:24:25,452 INFO L290 TraceCheckUtils]: 41: Hoare triple {4102#(<= ~counter~0 4)} assume !(0 == ~cond); {4102#(<= ~counter~0 4)} is VALID [2022-02-20 17:24:25,452 INFO L290 TraceCheckUtils]: 42: Hoare triple {4102#(<= ~counter~0 4)} assume true; {4102#(<= ~counter~0 4)} is VALID [2022-02-20 17:24:25,452 INFO L284 TraceCheckUtils]: 43: Hoare quadruple {4102#(<= ~counter~0 4)} {4102#(<= ~counter~0 4)} #95#return; {4102#(<= ~counter~0 4)} is VALID [2022-02-20 17:24:25,453 INFO L290 TraceCheckUtils]: 44: Hoare triple {4102#(<= ~counter~0 4)} assume !(main_~r~0#1 < 0); {4102#(<= ~counter~0 4)} is VALID [2022-02-20 17:24:25,453 INFO L290 TraceCheckUtils]: 45: Hoare triple {4102#(<= ~counter~0 4)} main_#t~post6#1 := ~counter~0;~counter~0 := 1 + main_#t~post6#1; {4127#(<= |ULTIMATE.start_main_#t~post6#1| 4)} is VALID [2022-02-20 17:24:25,453 INFO L290 TraceCheckUtils]: 46: Hoare triple {4127#(<= |ULTIMATE.start_main_#t~post6#1| 4)} assume !(main_#t~post6#1 < 5);havoc main_#t~post6#1; {3983#false} is VALID [2022-02-20 17:24:25,453 INFO L272 TraceCheckUtils]: 47: Hoare triple {3983#false} call __VERIFIER_assert((if 4 * main_~A~0#1 == main_~u~0#1 * main_~u~0#1 - main_~v~0#1 * main_~v~0#1 - 2 * main_~u~0#1 + 2 * main_~v~0#1 then 1 else 0)); {3983#false} is VALID [2022-02-20 17:24:25,453 INFO L290 TraceCheckUtils]: 48: Hoare triple {3983#false} ~cond := #in~cond; {3983#false} is VALID [2022-02-20 17:24:25,453 INFO L290 TraceCheckUtils]: 49: Hoare triple {3983#false} assume 0 == ~cond; {3983#false} is VALID [2022-02-20 17:24:25,454 INFO L290 TraceCheckUtils]: 50: Hoare triple {3983#false} assume !false; {3983#false} is VALID [2022-02-20 17:24:25,454 INFO L134 CoverageAnalysis]: Checked inductivity of 42 backedges. 8 proven. 30 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-02-20 17:24:25,454 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-02-20 17:24:25,650 INFO L290 TraceCheckUtils]: 50: Hoare triple {3983#false} assume !false; {3983#false} is VALID [2022-02-20 17:24:25,650 INFO L290 TraceCheckUtils]: 49: Hoare triple {3983#false} assume 0 == ~cond; {3983#false} is VALID [2022-02-20 17:24:25,650 INFO L290 TraceCheckUtils]: 48: Hoare triple {3983#false} ~cond := #in~cond; {3983#false} is VALID [2022-02-20 17:24:25,650 INFO L272 TraceCheckUtils]: 47: Hoare triple {3983#false} call __VERIFIER_assert((if 4 * main_~A~0#1 == main_~u~0#1 * main_~u~0#1 - main_~v~0#1 * main_~v~0#1 - 2 * main_~u~0#1 + 2 * main_~v~0#1 then 1 else 0)); {3983#false} is VALID [2022-02-20 17:24:25,650 INFO L290 TraceCheckUtils]: 46: Hoare triple {4127#(<= |ULTIMATE.start_main_#t~post6#1| 4)} assume !(main_#t~post6#1 < 5);havoc main_#t~post6#1; {3983#false} is VALID [2022-02-20 17:24:25,651 INFO L290 TraceCheckUtils]: 45: Hoare triple {4102#(<= ~counter~0 4)} main_#t~post6#1 := ~counter~0;~counter~0 := 1 + main_#t~post6#1; {4127#(<= |ULTIMATE.start_main_#t~post6#1| 4)} is VALID [2022-02-20 17:24:25,651 INFO L290 TraceCheckUtils]: 44: Hoare triple {4102#(<= ~counter~0 4)} assume !(main_~r~0#1 < 0); {4102#(<= ~counter~0 4)} is VALID [2022-02-20 17:24:25,651 INFO L284 TraceCheckUtils]: 43: Hoare quadruple {3982#true} {4102#(<= ~counter~0 4)} #95#return; {4102#(<= ~counter~0 4)} is VALID [2022-02-20 17:24:25,652 INFO L290 TraceCheckUtils]: 42: Hoare triple {3982#true} assume true; {3982#true} is VALID [2022-02-20 17:24:25,652 INFO L290 TraceCheckUtils]: 41: Hoare triple {3982#true} assume !(0 == ~cond); {3982#true} is VALID [2022-02-20 17:24:25,652 INFO L290 TraceCheckUtils]: 40: Hoare triple {3982#true} ~cond := #in~cond; {3982#true} is VALID [2022-02-20 17:24:25,652 INFO L272 TraceCheckUtils]: 39: Hoare triple {4102#(<= ~counter~0 4)} call __VERIFIER_assert((if 4 * (main_~A~0#1 + main_~r~0#1) == main_~u~0#1 * main_~u~0#1 - main_~v~0#1 * main_~v~0#1 - 2 * main_~u~0#1 + 2 * main_~v~0#1 then 1 else 0)); {3982#true} is VALID [2022-02-20 17:24:25,652 INFO L290 TraceCheckUtils]: 38: Hoare triple {4102#(<= ~counter~0 4)} assume !!(main_#t~post8#1 < 5);havoc main_#t~post8#1; {4102#(<= ~counter~0 4)} is VALID [2022-02-20 17:24:25,652 INFO L290 TraceCheckUtils]: 37: Hoare triple {4077#(<= ~counter~0 3)} main_#t~post8#1 := ~counter~0;~counter~0 := 1 + main_#t~post8#1; {4102#(<= ~counter~0 4)} is VALID [2022-02-20 17:24:25,653 INFO L290 TraceCheckUtils]: 36: Hoare triple {4077#(<= ~counter~0 3)} assume !!(main_~r~0#1 < 0);main_~r~0#1 := main_~r~0#1 + main_~u~0#1;main_~u~0#1 := 2 + main_~u~0#1; {4077#(<= ~counter~0 3)} is VALID [2022-02-20 17:24:25,653 INFO L284 TraceCheckUtils]: 35: Hoare quadruple {3982#true} {4077#(<= ~counter~0 3)} #95#return; {4077#(<= ~counter~0 3)} is VALID [2022-02-20 17:24:25,653 INFO L290 TraceCheckUtils]: 34: Hoare triple {3982#true} assume true; {3982#true} is VALID [2022-02-20 17:24:25,653 INFO L290 TraceCheckUtils]: 33: Hoare triple {3982#true} assume !(0 == ~cond); {3982#true} is VALID [2022-02-20 17:24:25,653 INFO L290 TraceCheckUtils]: 32: Hoare triple {3982#true} ~cond := #in~cond; {3982#true} is VALID [2022-02-20 17:24:25,653 INFO L272 TraceCheckUtils]: 31: Hoare triple {4077#(<= ~counter~0 3)} call __VERIFIER_assert((if 4 * (main_~A~0#1 + main_~r~0#1) == main_~u~0#1 * main_~u~0#1 - main_~v~0#1 * main_~v~0#1 - 2 * main_~u~0#1 + 2 * main_~v~0#1 then 1 else 0)); {3982#true} is VALID [2022-02-20 17:24:25,654 INFO L290 TraceCheckUtils]: 30: Hoare triple {4077#(<= ~counter~0 3)} assume !!(main_#t~post8#1 < 5);havoc main_#t~post8#1; {4077#(<= ~counter~0 3)} is VALID [2022-02-20 17:24:25,654 INFO L290 TraceCheckUtils]: 29: Hoare triple {4052#(<= ~counter~0 2)} main_#t~post8#1 := ~counter~0;~counter~0 := 1 + main_#t~post8#1; {4077#(<= ~counter~0 3)} is VALID [2022-02-20 17:24:25,654 INFO L290 TraceCheckUtils]: 28: Hoare triple {4052#(<= ~counter~0 2)} assume !(main_~r~0#1 > 0); {4052#(<= ~counter~0 2)} is VALID [2022-02-20 17:24:25,655 INFO L284 TraceCheckUtils]: 27: Hoare quadruple {3982#true} {4052#(<= ~counter~0 2)} #93#return; {4052#(<= ~counter~0 2)} is VALID [2022-02-20 17:24:25,655 INFO L290 TraceCheckUtils]: 26: Hoare triple {3982#true} assume true; {3982#true} is VALID [2022-02-20 17:24:25,655 INFO L290 TraceCheckUtils]: 25: Hoare triple {3982#true} assume !(0 == ~cond); {3982#true} is VALID [2022-02-20 17:24:25,655 INFO L290 TraceCheckUtils]: 24: Hoare triple {3982#true} ~cond := #in~cond; {3982#true} is VALID [2022-02-20 17:24:25,655 INFO L272 TraceCheckUtils]: 23: Hoare triple {4052#(<= ~counter~0 2)} call __VERIFIER_assert((if 4 * (main_~A~0#1 + main_~r~0#1) == main_~u~0#1 * main_~u~0#1 - main_~v~0#1 * main_~v~0#1 - 2 * main_~u~0#1 + 2 * main_~v~0#1 then 1 else 0)); {3982#true} is VALID [2022-02-20 17:24:25,655 INFO L290 TraceCheckUtils]: 22: Hoare triple {4052#(<= ~counter~0 2)} assume !!(main_#t~post7#1 < 5);havoc main_#t~post7#1; {4052#(<= ~counter~0 2)} is VALID [2022-02-20 17:24:25,656 INFO L290 TraceCheckUtils]: 21: Hoare triple {4027#(<= ~counter~0 1)} main_#t~post7#1 := ~counter~0;~counter~0 := 1 + main_#t~post7#1; {4052#(<= ~counter~0 2)} is VALID [2022-02-20 17:24:25,656 INFO L290 TraceCheckUtils]: 20: Hoare triple {4027#(<= ~counter~0 1)} assume !!(0 != main_~r~0#1); {4027#(<= ~counter~0 1)} is VALID [2022-02-20 17:24:25,657 INFO L284 TraceCheckUtils]: 19: Hoare quadruple {3982#true} {4027#(<= ~counter~0 1)} #91#return; {4027#(<= ~counter~0 1)} is VALID [2022-02-20 17:24:25,657 INFO L290 TraceCheckUtils]: 18: Hoare triple {3982#true} assume true; {3982#true} is VALID [2022-02-20 17:24:25,657 INFO L290 TraceCheckUtils]: 17: Hoare triple {3982#true} assume !(0 == ~cond); {3982#true} is VALID [2022-02-20 17:24:25,657 INFO L290 TraceCheckUtils]: 16: Hoare triple {3982#true} ~cond := #in~cond; {3982#true} is VALID [2022-02-20 17:24:25,657 INFO L272 TraceCheckUtils]: 15: Hoare triple {4027#(<= ~counter~0 1)} call __VERIFIER_assert((if 4 * (main_~A~0#1 + main_~r~0#1) == main_~u~0#1 * main_~u~0#1 - main_~v~0#1 * main_~v~0#1 - 2 * main_~u~0#1 + 2 * main_~v~0#1 then 1 else 0)); {3982#true} is VALID [2022-02-20 17:24:25,657 INFO L290 TraceCheckUtils]: 14: Hoare triple {4027#(<= ~counter~0 1)} assume !!(main_#t~post6#1 < 5);havoc main_#t~post6#1; {4027#(<= ~counter~0 1)} is VALID [2022-02-20 17:24:25,658 INFO L290 TraceCheckUtils]: 13: Hoare triple {3987#(<= ~counter~0 0)} main_#t~post6#1 := ~counter~0;~counter~0 := 1 + main_#t~post6#1; {4027#(<= ~counter~0 1)} is VALID [2022-02-20 17:24:25,658 INFO L290 TraceCheckUtils]: 12: Hoare triple {3987#(<= ~counter~0 0)} main_~u~0#1 := 1 + 2 * main_~R~0#1;main_~v~0#1 := 1;main_~r~0#1 := main_~R~0#1 * main_~R~0#1 - main_~A~0#1; {3987#(<= ~counter~0 0)} is VALID [2022-02-20 17:24:25,658 INFO L284 TraceCheckUtils]: 11: Hoare quadruple {3982#true} {3987#(<= ~counter~0 0)} #89#return; {3987#(<= ~counter~0 0)} is VALID [2022-02-20 17:24:25,658 INFO L290 TraceCheckUtils]: 10: Hoare triple {3982#true} assume true; {3982#true} is VALID [2022-02-20 17:24:25,658 INFO L290 TraceCheckUtils]: 9: Hoare triple {3982#true} assume !(0 == ~cond); {3982#true} is VALID [2022-02-20 17:24:25,658 INFO L290 TraceCheckUtils]: 8: Hoare triple {3982#true} ~cond := #in~cond; {3982#true} is VALID [2022-02-20 17:24:25,658 INFO L272 TraceCheckUtils]: 7: Hoare triple {3987#(<= ~counter~0 0)} call assume_abort_if_not((if 1 == (if main_~A~0#1 < 0 && 0 != main_~A~0#1 % 2 then main_~A~0#1 % 2 - 2 else main_~A~0#1 % 2) then 1 else 0)); {3982#true} is VALID [2022-02-20 17:24:25,659 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {3982#true} {3987#(<= ~counter~0 0)} #87#return; {3987#(<= ~counter~0 0)} is VALID [2022-02-20 17:24:25,659 INFO L290 TraceCheckUtils]: 5: Hoare triple {3982#true} assume true; {3982#true} is VALID [2022-02-20 17:24:25,659 INFO L290 TraceCheckUtils]: 4: Hoare triple {3982#true} assume !(0 == ~cond); {3982#true} is VALID [2022-02-20 17:24:25,659 INFO L290 TraceCheckUtils]: 3: Hoare triple {3982#true} ~cond := #in~cond; {3982#true} is VALID [2022-02-20 17:24:25,659 INFO L272 TraceCheckUtils]: 2: Hoare triple {3987#(<= ~counter~0 0)} call assume_abort_if_not((if (main_~R~0#1 - 1) * (main_~R~0#1 - 1) < main_~A~0#1 then 1 else 0)); {3982#true} is VALID [2022-02-20 17:24:25,659 INFO L290 TraceCheckUtils]: 1: Hoare triple {3987#(<= ~counter~0 0)} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~nondet5#1, main_#t~post7#1, main_#t~post8#1, main_#t~post6#1, main_~A~0#1, main_~R~0#1, main_~u~0#1, main_~v~0#1, main_~r~0#1;havoc main_~A~0#1;havoc main_~R~0#1;havoc main_~u~0#1;havoc main_~v~0#1;havoc main_~r~0#1;assume -2147483648 <= main_#t~nondet4#1 && main_#t~nondet4#1 <= 2147483647;main_~A~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1;assume -2147483648 <= main_#t~nondet5#1 && main_#t~nondet5#1 <= 2147483647;main_~R~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; {3987#(<= ~counter~0 0)} is VALID [2022-02-20 17:24:25,660 INFO L290 TraceCheckUtils]: 0: Hoare triple {3982#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(13, 2);call #Ultimate.allocInit(12, 3);~counter~0 := 0; {3987#(<= ~counter~0 0)} is VALID [2022-02-20 17:24:25,660 INFO L134 CoverageAnalysis]: Checked inductivity of 42 backedges. 8 proven. 6 refuted. 0 times theorem prover too weak. 28 trivial. 0 not checked. [2022-02-20 17:24:25,660 INFO L144 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-02-20 17:24:25,660 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2088085202] [2022-02-20 17:24:25,660 WARN L317 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-02-20 17:24:25,660 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [500504054] [2022-02-20 17:24:25,660 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleZ3 [500504054] provided 0 perfect and 2 imperfect interpolant sequences [2022-02-20 17:24:25,660 INFO L191 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-02-20 17:24:25,661 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [7, 8] total 8 [2022-02-20 17:24:25,661 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [695455123] [2022-02-20 17:24:25,661 INFO L85 oduleStraightlineAll]: Using 2 imperfect interpolants to construct interpolant automaton [2022-02-20 17:24:25,661 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 5.125) internal successors, (41), 8 states have internal predecessors, (41), 6 states have call successors, (13), 7 states have call predecessors, (13), 6 states have return successors, (12), 5 states have call predecessors, (12), 5 states have call successors, (12) Word has length 51 [2022-02-20 17:24:25,662 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 17:24:25,662 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 8 states, 8 states have (on average 5.125) internal successors, (41), 8 states have internal predecessors, (41), 6 states have call successors, (13), 7 states have call predecessors, (13), 6 states have return successors, (12), 5 states have call predecessors, (12), 5 states have call successors, (12) [2022-02-20 17:24:25,716 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 66 edges. 66 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 17:24:25,717 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 8 states [2022-02-20 17:24:25,717 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy CAMEL [2022-02-20 17:24:25,717 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 8 interpolants. [2022-02-20 17:24:25,717 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=23, Invalid=33, Unknown=0, NotChecked=0, Total=56 [2022-02-20 17:24:25,718 INFO L87 Difference]: Start difference. First operand 90 states and 112 transitions. Second operand has 8 states, 8 states have (on average 5.125) internal successors, (41), 8 states have internal predecessors, (41), 6 states have call successors, (13), 7 states have call predecessors, (13), 6 states have return successors, (12), 5 states have call predecessors, (12), 5 states have call successors, (12) [2022-02-20 17:24:25,898 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:24:25,898 INFO L93 Difference]: Finished difference Result 97 states and 119 transitions. [2022-02-20 17:24:25,898 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-02-20 17:24:25,898 INFO L78 Accepts]: Start accepts. Automaton has has 8 states, 8 states have (on average 5.125) internal successors, (41), 8 states have internal predecessors, (41), 6 states have call successors, (13), 7 states have call predecessors, (13), 6 states have return successors, (12), 5 states have call predecessors, (12), 5 states have call successors, (12) Word has length 51 [2022-02-20 17:24:25,898 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 17:24:25,898 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 5.125) internal successors, (41), 8 states have internal predecessors, (41), 6 states have call successors, (13), 7 states have call predecessors, (13), 6 states have return successors, (12), 5 states have call predecessors, (12), 5 states have call successors, (12) [2022-02-20 17:24:25,899 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 91 transitions. [2022-02-20 17:24:25,900 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 8 states, 8 states have (on average 5.125) internal successors, (41), 8 states have internal predecessors, (41), 6 states have call successors, (13), 7 states have call predecessors, (13), 6 states have return successors, (12), 5 states have call predecessors, (12), 5 states have call successors, (12) [2022-02-20 17:24:25,900 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 91 transitions. [2022-02-20 17:24:25,901 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 9 states and 91 transitions. [2022-02-20 17:24:25,953 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 91 edges. 91 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 17:24:25,954 INFO L225 Difference]: With dead ends: 97 [2022-02-20 17:24:25,954 INFO L226 Difference]: Without dead ends: 92 [2022-02-20 17:24:25,954 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 101 GetRequests, 93 SyntacticMatches, 1 SemanticMatches, 7 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 8 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=30, Invalid=42, Unknown=0, NotChecked=0, Total=72 [2022-02-20 17:24:25,955 INFO L933 BasicCegarLoop]: 38 mSDtfsCounter, 33 mSDsluCounter, 96 mSDsCounter, 0 mSdLazyCounter, 35 mSolverCounterSat, 28 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 33 SdHoareTripleChecker+Valid, 134 SdHoareTripleChecker+Invalid, 63 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 28 IncrementalHoareTripleChecker+Valid, 35 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 17:24:25,955 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [33 Valid, 134 Invalid, 63 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [28 Valid, 35 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 17:24:25,955 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 92 states. [2022-02-20 17:24:25,992 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 92 to 92. [2022-02-20 17:24:25,992 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 17:24:25,992 INFO L82 GeneralOperation]: Start isEquivalent. First operand 92 states. Second operand has 92 states, 69 states have (on average 1.2028985507246377) internal successors, (83), 69 states have internal predecessors, (83), 16 states have call successors, (16), 7 states have call predecessors, (16), 6 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) [2022-02-20 17:24:25,992 INFO L74 IsIncluded]: Start isIncluded. First operand 92 states. Second operand has 92 states, 69 states have (on average 1.2028985507246377) internal successors, (83), 69 states have internal predecessors, (83), 16 states have call successors, (16), 7 states have call predecessors, (16), 6 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) [2022-02-20 17:24:25,993 INFO L87 Difference]: Start difference. First operand 92 states. Second operand has 92 states, 69 states have (on average 1.2028985507246377) internal successors, (83), 69 states have internal predecessors, (83), 16 states have call successors, (16), 7 states have call predecessors, (16), 6 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) [2022-02-20 17:24:25,994 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:24:25,994 INFO L93 Difference]: Finished difference Result 92 states and 114 transitions. [2022-02-20 17:24:25,994 INFO L276 IsEmpty]: Start isEmpty. Operand 92 states and 114 transitions. [2022-02-20 17:24:25,995 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 17:24:25,995 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 17:24:25,995 INFO L74 IsIncluded]: Start isIncluded. First operand has 92 states, 69 states have (on average 1.2028985507246377) internal successors, (83), 69 states have internal predecessors, (83), 16 states have call successors, (16), 7 states have call predecessors, (16), 6 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) Second operand 92 states. [2022-02-20 17:24:25,995 INFO L87 Difference]: Start difference. First operand has 92 states, 69 states have (on average 1.2028985507246377) internal successors, (83), 69 states have internal predecessors, (83), 16 states have call successors, (16), 7 states have call predecessors, (16), 6 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) Second operand 92 states. [2022-02-20 17:24:25,997 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:24:25,997 INFO L93 Difference]: Finished difference Result 92 states and 114 transitions. [2022-02-20 17:24:25,997 INFO L276 IsEmpty]: Start isEmpty. Operand 92 states and 114 transitions. [2022-02-20 17:24:25,997 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 17:24:25,997 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 17:24:25,997 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 17:24:25,997 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 17:24:25,998 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 92 states, 69 states have (on average 1.2028985507246377) internal successors, (83), 69 states have internal predecessors, (83), 16 states have call successors, (16), 7 states have call predecessors, (16), 6 states have return successors, (15), 15 states have call predecessors, (15), 15 states have call successors, (15) [2022-02-20 17:24:25,999 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 92 states to 92 states and 114 transitions. [2022-02-20 17:24:25,999 INFO L78 Accepts]: Start accepts. Automaton has 92 states and 114 transitions. Word has length 51 [2022-02-20 17:24:25,999 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 17:24:25,999 INFO L470 AbstractCegarLoop]: Abstraction has 92 states and 114 transitions. [2022-02-20 17:24:25,999 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 8 states, 8 states have (on average 5.125) internal successors, (41), 8 states have internal predecessors, (41), 6 states have call successors, (13), 7 states have call predecessors, (13), 6 states have return successors, (12), 5 states have call predecessors, (12), 5 states have call successors, (12) [2022-02-20 17:24:26,000 INFO L276 IsEmpty]: Start isEmpty. Operand 92 states and 114 transitions. [2022-02-20 17:24:26,000 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 60 [2022-02-20 17:24:26,000 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 17:24:26,000 INFO L514 BasicCegarLoop]: trace histogram [6, 5, 5, 3, 3, 3, 3, 2, 2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 17:24:26,018 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (11)] Forceful destruction successful, exit code 0 [2022-02-20 17:24:26,211 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 11 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable9 [2022-02-20 17:24:26,211 INFO L402 AbstractCegarLoop]: === Iteration 11 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 17:24:26,212 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 17:24:26,212 INFO L85 PathProgramCache]: Analyzing trace with hash 64478878, now seen corresponding path program 2 times [2022-02-20 17:24:26,212 INFO L126 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-02-20 17:24:26,212 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [810544703] [2022-02-20 17:24:26,212 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 17:24:26,212 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-02-20 17:24:26,220 ERROR L252 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-02-20 17:24:26,221 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [72343757] [2022-02-20 17:24:26,221 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-02-20 17:24:26,221 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-02-20 17:24:26,221 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 17:24:26,222 INFO L229 MonitoredProcess]: Starting monitored process 12 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (exit command is (exit), workingDir is null) [2022-02-20 17:24:26,223 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (12)] Waiting until timeout for monitored process [2022-02-20 17:24:26,260 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-02-20 17:24:26,260 INFO L229 tOrderPrioritization]: Conjunction of SSA is sat [2022-02-20 17:24:26,260 INFO L352 TraceCheck]: Trace is feasible, we will do another trace check, this time with branch encoders. [2022-02-20 17:24:26,271 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is sat [2022-02-20 17:24:26,287 INFO L138 FreeRefinementEngine]: Strategy CAMEL found a feasible trace [2022-02-20 17:24:26,287 INFO L628 BasicCegarLoop]: Counterexample is feasible [2022-02-20 17:24:26,288 INFO L764 garLoopResultBuilder]: Registering result UNSAFE for location __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION (0 of 1 remaining) [2022-02-20 17:24:26,306 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (12)] Forceful destruction successful, exit code 0 [2022-02-20 17:24:26,503 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 12 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable10 [2022-02-20 17:24:26,505 INFO L732 BasicCegarLoop]: Path program histogram: [2, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 17:24:26,507 INFO L180 ceAbstractionStarter]: Computing trace abstraction results [2022-02-20 17:24:26,524 FATAL L489 DefaultTranslator]: Callstack has procedure call flag but succeeding procedure is empty at [CALL] call assume_abort_if_not((if (~R~0 - 1) * (~R~0 - 1) < ~A~0 then 1 else 0)); [2022-02-20 17:24:26,525 FATAL L? ?]: The Plugin de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction has thrown an exception: java.lang.AssertionError: callstack broken after backtranslation by InlinerBacktranslator at de.uni_freiburg.informatik.ultimate.boogie.procedureinliner.backtranslation.InlinerBacktranslator.translateProgramExecution(InlinerBacktranslator.java:230) at de.uni_freiburg.informatik.ultimate.core.coreplugin.services.ModelTranslationContainer.translateProgramExecution(ModelTranslationContainer.java:216) at de.uni_freiburg.informatik.ultimate.core.coreplugin.services.ModelTranslationContainer.translateProgramExecution(ModelTranslationContainer.java:225) at de.uni_freiburg.informatik.ultimate.core.coreplugin.services.ModelTranslationContainer.translateProgramExecution(ModelTranslationContainer.java:225) at de.uni_freiburg.informatik.ultimate.core.coreplugin.services.ModelTranslationContainer.translateProgramExecution(ModelTranslationContainer.java:206) at de.uni_freiburg.informatik.ultimate.core.lib.results.CounterExampleResult.getProgramExecutionAsString(CounterExampleResult.java:155) at de.uni_freiburg.informatik.ultimate.core.lib.results.CounterExampleResult.getLongDescription(CounterExampleResult.java:134) at de.uni_freiburg.informatik.ultimate.core.coreplugin.services.ResultService.reportResult(ResultService.java:86) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.CegarLoopResultReporter.reportResult(CegarLoopResultReporter.java:141) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionStarter.reportLocationResults(TraceAbstractionStarter.java:607) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionStarter.runCegarLoops(TraceAbstractionStarter.java:182) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionStarter.(TraceAbstractionStarter.java:156) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver.finish(TraceAbstractionObserver.java:123) at de.uni_freiburg.informatik.ultimate.core.coreplugin.PluginConnector.runObserver(PluginConnector.java:168) at de.uni_freiburg.informatik.ultimate.core.coreplugin.PluginConnector.runTool(PluginConnector.java:151) at de.uni_freiburg.informatik.ultimate.core.coreplugin.PluginConnector.run(PluginConnector.java:128) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.executePluginConnector(ToolchainWalker.java:232) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.processPlugin(ToolchainWalker.java:226) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.walkUnprotected(ToolchainWalker.java:142) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainWalker.walk(ToolchainWalker.java:104) at de.uni_freiburg.informatik.ultimate.core.coreplugin.ToolchainManager$Toolchain.processToolchain(ToolchainManager.java:320) at de.uni_freiburg.informatik.ultimate.core.coreplugin.toolchain.DefaultToolchainJob.run(DefaultToolchainJob.java:145) at org.eclipse.core.internal.jobs.Worker.run(Worker.java:63) [2022-02-20 17:24:26,528 INFO L158 Benchmark]: Toolchain (without parser) took 21333.67ms. Allocated memory was 92.3MB in the beginning and 115.3MB in the end (delta: 23.1MB). Free memory was 58.1MB in the beginning and 35.6MB in the end (delta: 22.6MB). Peak memory consumption was 44.4MB. Max. memory is 16.1GB. [2022-02-20 17:24:26,529 INFO L158 Benchmark]: CDTParser took 0.10ms. Allocated memory is still 75.5MB. Free memory was 54.3MB in the beginning and 54.3MB in the end (delta: 26.8kB). There was no memory consumed. Max. memory is 16.1GB. [2022-02-20 17:24:26,529 INFO L158 Benchmark]: CACSL2BoogieTranslator took 207.63ms. Allocated memory is still 92.3MB. Free memory was 57.9MB in the beginning and 66.9MB in the end (delta: -9.0MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. [2022-02-20 17:24:26,529 INFO L158 Benchmark]: Boogie Procedure Inliner took 33.38ms. Allocated memory is still 92.3MB. Free memory was 66.9MB in the beginning and 65.3MB in the end (delta: 1.6MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. [2022-02-20 17:24:26,529 INFO L158 Benchmark]: Boogie Preprocessor took 14.08ms. Allocated memory is still 92.3MB. Free memory was 65.3MB in the beginning and 64.0MB in the end (delta: 1.3MB). There was no memory consumed. Max. memory is 16.1GB. [2022-02-20 17:24:26,529 INFO L158 Benchmark]: RCFGBuilder took 301.49ms. Allocated memory is still 92.3MB. Free memory was 64.0MB in the beginning and 51.8MB in the end (delta: 12.2MB). Peak memory consumption was 12.6MB. Max. memory is 16.1GB. [2022-02-20 17:24:26,529 INFO L158 Benchmark]: TraceAbstraction took 20772.58ms. Allocated memory was 92.3MB in the beginning and 115.3MB in the end (delta: 23.1MB). Free memory was 51.3MB in the beginning and 35.6MB in the end (delta: 15.8MB). Peak memory consumption was 40.7MB. Max. memory is 16.1GB. [2022-02-20 17:24:26,530 INFO L339 ainManager$Toolchain]: ####################### End [Toolchain 1] ####################### --- Results --- * Results from de.uni_freiburg.informatik.ultimate.core: - AssertionsEnabledResult: Assertions are enabled Assertions are enabled - StatisticsResult: Toolchain Benchmarks Benchmark results are: * CDTParser took 0.10ms. Allocated memory is still 75.5MB. Free memory was 54.3MB in the beginning and 54.3MB in the end (delta: 26.8kB). There was no memory consumed. Max. memory is 16.1GB. * CACSL2BoogieTranslator took 207.63ms. Allocated memory is still 92.3MB. Free memory was 57.9MB in the beginning and 66.9MB in the end (delta: -9.0MB). Peak memory consumption was 8.4MB. Max. memory is 16.1GB. * Boogie Procedure Inliner took 33.38ms. Allocated memory is still 92.3MB. Free memory was 66.9MB in the beginning and 65.3MB in the end (delta: 1.6MB). Peak memory consumption was 2.1MB. Max. memory is 16.1GB. * Boogie Preprocessor took 14.08ms. Allocated memory is still 92.3MB. Free memory was 65.3MB in the beginning and 64.0MB in the end (delta: 1.3MB). There was no memory consumed. Max. memory is 16.1GB. * RCFGBuilder took 301.49ms. Allocated memory is still 92.3MB. Free memory was 64.0MB in the beginning and 51.8MB in the end (delta: 12.2MB). Peak memory consumption was 12.6MB. Max. memory is 16.1GB. * TraceAbstraction took 20772.58ms. Allocated memory was 92.3MB in the beginning and 115.3MB in the end (delta: 23.1MB). Free memory was 51.3MB in the beginning and 35.6MB in the end (delta: 15.8MB). Peak memory consumption was 40.7MB. Max. memory is 16.1GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - StatisticsResult: ErrorAutomatonStatistics NumberErrorTraces: 0, NumberStatementsAllTraces: 0, NumberRelevantStatements: 0, 0.0s ErrorAutomatonConstructionTimeTotal, 0.0s FaulLocalizationTime, NumberStatementsFirstTrace: -1, TraceLengthAvg: 0, 0.0s ErrorAutomatonConstructionTimeAvg, 0.0s ErrorAutomatonDifferenceTimeAvg, 0.0s ErrorAutomatonDifferenceTimeTotal, NumberOfNoEnhancement: 0, NumberOfFiniteEnhancement: 0, NumberOfInfiniteEnhancement: 0 - ExceptionOrErrorResult: AssertionError: callstack broken after backtranslation by InlinerBacktranslator de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: AssertionError: callstack broken after backtranslation by InlinerBacktranslator: de.uni_freiburg.informatik.ultimate.boogie.procedureinliner.backtranslation.InlinerBacktranslator.translateProgramExecution(InlinerBacktranslator.java:230) RESULT: Ultimate could not prove your program: Toolchain returned no result. [2022-02-20 17:24:26,544 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Forceful destruction successful, exit code 0 Received shutdown request... --- End real Ultimate output --- Execution finished normally Using bit-precise analysis Retrying with bit-precise analysis ### Bit-precise run ### Calling Ultimate with: /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/nla-digbench-scaling/fermat1-ll_unwindbound5.c -s /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Bitvector.epf --cacsl2boogietranslator.entry.function main --witnessprinter.witness.directory /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux --witnessprinter.witness.filename witness.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 7f97a505fe6488215cf15708661c3a7c87a5132fbff317a4b6f7f9cc44d66008 --- Real Ultimate output --- This is Ultimate 0.2.2-dev-03d7b7b [2022-02-20 17:24:28,065 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-02-20 17:24:28,067 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-02-20 17:24:28,097 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-02-20 17:24:28,098 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-02-20 17:24:28,098 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-02-20 17:24:28,102 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-02-20 17:24:28,106 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-02-20 17:24:28,107 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-02-20 17:24:28,111 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-02-20 17:24:28,112 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-02-20 17:24:28,114 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-02-20 17:24:28,115 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-02-20 17:24:28,117 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-02-20 17:24:28,118 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-02-20 17:24:28,119 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-02-20 17:24:28,120 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-02-20 17:24:28,120 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-02-20 17:24:28,124 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-02-20 17:24:28,128 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-02-20 17:24:28,129 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-02-20 17:24:28,130 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-02-20 17:24:28,130 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-02-20 17:24:28,132 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-02-20 17:24:28,136 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-02-20 17:24:28,136 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-02-20 17:24:28,137 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-02-20 17:24:28,138 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-02-20 17:24:28,138 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-02-20 17:24:28,138 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-02-20 17:24:28,139 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-02-20 17:24:28,139 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-02-20 17:24:28,140 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-02-20 17:24:28,141 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-02-20 17:24:28,142 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-02-20 17:24:28,142 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-02-20 17:24:28,142 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-02-20 17:24:28,142 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-02-20 17:24:28,143 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-02-20 17:24:28,144 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-02-20 17:24:28,144 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-02-20 17:24:28,145 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/config/svcomp-Reach-32bit-Automizer_Bitvector.epf [2022-02-20 17:24:28,172 INFO L113 SettingsManager]: Loading preferences was successful [2022-02-20 17:24:28,173 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-02-20 17:24:28,173 INFO L136 SettingsManager]: Preferences of UltimateCore differ from their defaults: [2022-02-20 17:24:28,174 INFO L138 SettingsManager]: * Log level for class=de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=ERROR; [2022-02-20 17:24:28,174 INFO L136 SettingsManager]: Preferences of Boogie Procedure Inliner differ from their defaults: [2022-02-20 17:24:28,174 INFO L138 SettingsManager]: * Ignore calls to procedures called more than once=ONLY_FOR_SEQUENTIAL_PROGRAMS [2022-02-20 17:24:28,175 INFO L136 SettingsManager]: Preferences of BlockEncodingV2 differ from their defaults: [2022-02-20 17:24:28,175 INFO L138 SettingsManager]: * Create parallel compositions if possible=false [2022-02-20 17:24:28,176 INFO L138 SettingsManager]: * Use SBE=true [2022-02-20 17:24:28,176 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-02-20 17:24:28,176 INFO L138 SettingsManager]: * sizeof long=4 [2022-02-20 17:24:28,177 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-02-20 17:24:28,177 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-02-20 17:24:28,177 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-02-20 17:24:28,177 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-02-20 17:24:28,177 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-02-20 17:24:28,177 INFO L138 SettingsManager]: * Adapt memory model on pointer casts if necessary=true [2022-02-20 17:24:28,178 INFO L138 SettingsManager]: * Use bitvectors instead of ints=true [2022-02-20 17:24:28,178 INFO L138 SettingsManager]: * Memory model=HoenickeLindenmann_4ByteResolution [2022-02-20 17:24:28,178 INFO L138 SettingsManager]: * sizeof long double=12 [2022-02-20 17:24:28,178 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-02-20 17:24:28,178 INFO L138 SettingsManager]: * Use constant arrays=true [2022-02-20 17:24:28,178 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-02-20 17:24:28,179 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-02-20 17:24:28,179 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-02-20 17:24:28,179 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-02-20 17:24:28,179 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-02-20 17:24:28,179 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-02-20 17:24:28,179 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=FPandBP [2022-02-20 17:24:28,179 INFO L138 SettingsManager]: * Positions where we compute the Hoare Annotation=LoopsAndPotentialCycles [2022-02-20 17:24:28,180 INFO L138 SettingsManager]: * Trace refinement strategy=WOLF [2022-02-20 17:24:28,180 INFO L138 SettingsManager]: * Command for external solver=cvc4 --incremental --print-success --lang smt [2022-02-20 17:24:28,180 INFO L138 SettingsManager]: * Large block encoding in concurrent analysis=OFF [2022-02-20 17:24:28,180 INFO L138 SettingsManager]: * Automaton type used in concurrency analysis=PETRI_NET [2022-02-20 17:24:28,180 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-02-20 17:24:28,180 INFO L138 SettingsManager]: * SMT solver=External_ModelsAndUnsatCoreMode [2022-02-20 17:24:28,181 INFO L138 SettingsManager]: * Logic for external solver=AUFBV 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 -> 7f97a505fe6488215cf15708661c3a7c87a5132fbff317a4b6f7f9cc44d66008 [2022-02-20 17:24:28,410 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-02-20 17:24:28,427 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-02-20 17:24:28,429 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-02-20 17:24:28,429 INFO L271 PluginConnector]: Initializing CDTParser... [2022-02-20 17:24:28,430 INFO L275 PluginConnector]: CDTParser initialized [2022-02-20 17:24:28,431 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../sv-benchmarks/c/nla-digbench-scaling/fermat1-ll_unwindbound5.c [2022-02-20 17:24:28,475 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/bad9439f8/ba3f95000bca4f168b5c9172389addc8/FLAG0f0ae029f [2022-02-20 17:24:28,822 INFO L306 CDTParser]: Found 1 translation units. [2022-02-20 17:24:28,823 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/releaseScripts/default/sv-benchmarks/c/nla-digbench-scaling/fermat1-ll_unwindbound5.c [2022-02-20 17:24:28,827 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/bad9439f8/ba3f95000bca4f168b5c9172389addc8/FLAG0f0ae029f [2022-02-20 17:24:28,838 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/bad9439f8/ba3f95000bca4f168b5c9172389addc8 [2022-02-20 17:24:28,840 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-02-20 17:24:28,841 INFO L131 ToolchainWalker]: Walking toolchain with 6 elements. [2022-02-20 17:24:28,844 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-02-20 17:24:28,844 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-02-20 17:24:28,846 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-02-20 17:24:28,847 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 05:24:28" (1/1) ... [2022-02-20 17:24:28,848 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@319f5602 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 05:24:28, skipping insertion in model container [2022-02-20 17:24:28,848 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 20.02 05:24:28" (1/1) ... [2022-02-20 17:24:28,853 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-02-20 17:24:28,863 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-02-20 17:24:28,975 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/nla-digbench-scaling/fermat1-ll_unwindbound5.c[535,548] [2022-02-20 17:24:29,008 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-20 17:24:29,015 INFO L203 MainTranslator]: Completed pre-run [2022-02-20 17:24:29,044 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/nla-digbench-scaling/fermat1-ll_unwindbound5.c[535,548] [2022-02-20 17:24:29,056 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-02-20 17:24:29,071 INFO L208 MainTranslator]: Completed translation [2022-02-20 17:24:29,071 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 05:24:29 WrapperNode [2022-02-20 17:24:29,071 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-02-20 17:24:29,072 INFO L113 PluginConnector]: ------------------------Boogie Procedure Inliner---------------------------- [2022-02-20 17:24:29,073 INFO L271 PluginConnector]: Initializing Boogie Procedure Inliner... [2022-02-20 17:24:29,073 INFO L275 PluginConnector]: Boogie Procedure Inliner initialized [2022-02-20 17:24:29,077 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 05:24:29" (1/1) ... [2022-02-20 17:24:29,088 INFO L185 PluginConnector]: Executing the observer Inliner from plugin Boogie Procedure Inliner for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 05:24:29" (1/1) ... [2022-02-20 17:24:29,112 INFO L137 Inliner]: procedures = 14, calls = 13, calls flagged for inlining = 2, calls inlined = 2, statements flattened = 65 [2022-02-20 17:24:29,113 INFO L132 PluginConnector]: ------------------------ END Boogie Procedure Inliner---------------------------- [2022-02-20 17:24:29,114 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-02-20 17:24:29,114 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-02-20 17:24:29,114 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-02-20 17:24:29,120 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 05:24:29" (1/1) ... [2022-02-20 17:24:29,120 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 05:24:29" (1/1) ... [2022-02-20 17:24:29,124 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 05:24:29" (1/1) ... [2022-02-20 17:24:29,124 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 05:24:29" (1/1) ... [2022-02-20 17:24:29,140 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 05:24:29" (1/1) ... [2022-02-20 17:24:29,143 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 05:24:29" (1/1) ... [2022-02-20 17:24:29,147 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 05:24:29" (1/1) ... [2022-02-20 17:24:29,151 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-02-20 17:24:29,153 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-02-20 17:24:29,154 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-02-20 17:24:29,154 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-02-20 17:24:29,155 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 05:24:29" (1/1) ... [2022-02-20 17:24:29,159 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-02-20 17:24:29,166 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-02-20 17:24:29,177 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 17:24:29,183 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 17:24:29,203 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-02-20 17:24:29,203 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~intINTTYPE1 [2022-02-20 17:24:29,203 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-02-20 17:24:29,204 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-02-20 17:24:29,204 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-02-20 17:24:29,204 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-02-20 17:24:29,204 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-02-20 17:24:29,204 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-02-20 17:24:29,245 INFO L234 CfgBuilder]: Building ICFG [2022-02-20 17:24:29,246 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-02-20 17:24:29,435 INFO L275 CfgBuilder]: Performing block encoding [2022-02-20 17:24:29,442 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-02-20 17:24:29,442 INFO L299 CfgBuilder]: Removed 3 assume(true) statements. [2022-02-20 17:24:29,443 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 20.02 05:24:29 BoogieIcfgContainer [2022-02-20 17:24:29,443 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-02-20 17:24:29,451 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-02-20 17:24:29,451 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-02-20 17:24:29,453 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-02-20 17:24:29,453 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 20.02 05:24:28" (1/3) ... [2022-02-20 17:24:29,454 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@f92dd24 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 20.02 05:24:29, skipping insertion in model container [2022-02-20 17:24:29,454 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 20.02 05:24:29" (2/3) ... [2022-02-20 17:24:29,454 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@f92dd24 and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 20.02 05:24:29, skipping insertion in model container [2022-02-20 17:24:29,455 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 20.02 05:24:29" (3/3) ... [2022-02-20 17:24:29,456 INFO L111 eAbstractionObserver]: Analyzing ICFG fermat1-ll_unwindbound5.c [2022-02-20 17:24:29,459 INFO L205 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:FPandBP Determinization: PREDICATE_ABSTRACTION [2022-02-20 17:24:29,459 INFO L164 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-02-20 17:24:29,492 INFO L338 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-02-20 17:24:29,497 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 17:24:29,497 INFO L340 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-02-20 17:24:29,509 INFO L276 IsEmpty]: Start isEmpty. Operand has 32 states, 22 states have (on average 1.5454545454545454) internal successors, (34), 23 states have internal predecessors, (34), 6 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-02-20 17:24:29,513 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 19 [2022-02-20 17:24:29,513 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 17:24:29,513 INFO L514 BasicCegarLoop]: trace histogram [2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 17:24:29,514 INFO L402 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 17:24:29,517 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 17:24:29,517 INFO L85 PathProgramCache]: Analyzing trace with hash 738208203, now seen corresponding path program 1 times [2022-02-20 17:24:29,526 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 17:24:29,527 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [25221204] [2022-02-20 17:24:29,527 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 17:24:29,527 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 17:24:29,528 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 17:24:29,529 INFO L229 MonitoredProcess]: Starting monitored process 2 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2022-02-20 17:24:29,531 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (2)] Waiting until timeout for monitored process [2022-02-20 17:24:29,638 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 17:24:29,653 INFO L263 TraceCheckSpWp]: Trace formula consists of 40 conjuncts, 1 conjunts are in the unsatisfiable core [2022-02-20 17:24:29,667 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 17:24:29,670 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 17:24:29,762 INFO L290 TraceCheckUtils]: 0: Hoare triple {35#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);call #Ultimate.allocInit(2bv32, 1bv32);call write~init~intINTTYPE1(48bv8, 1bv32, 0bv32, 1bv32);call write~init~intINTTYPE1(0bv8, 1bv32, 1bv32, 1bv32);call #Ultimate.allocInit(13bv32, 2bv32);call #Ultimate.allocInit(12bv32, 3bv32);~counter~0 := 0bv32; {35#true} is VALID [2022-02-20 17:24:29,763 INFO L290 TraceCheckUtils]: 1: Hoare triple {35#true} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~nondet5#1, main_#t~post7#1, main_#t~post8#1, main_#t~post6#1, main_~A~0#1, main_~R~0#1, main_~u~0#1, main_~v~0#1, main_~r~0#1;havoc main_~A~0#1;havoc main_~R~0#1;havoc main_~u~0#1;havoc main_~v~0#1;havoc main_~r~0#1;main_~A~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1;main_~R~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; {35#true} is VALID [2022-02-20 17:24:29,763 INFO L272 TraceCheckUtils]: 2: Hoare triple {35#true} call assume_abort_if_not((if ~bvslt64(~bvmul64(~bvsub64(~sign_extendFrom32To64(main_~R~0#1), 1bv64), ~bvsub64(~sign_extendFrom32To64(main_~R~0#1), 1bv64)), ~sign_extendFrom32To64(main_~A~0#1)) then 1bv32 else 0bv32)); {35#true} is VALID [2022-02-20 17:24:29,763 INFO L290 TraceCheckUtils]: 3: Hoare triple {35#true} ~cond := #in~cond; {35#true} is VALID [2022-02-20 17:24:29,763 INFO L290 TraceCheckUtils]: 4: Hoare triple {35#true} assume 0bv32 == ~cond;assume false; {35#true} is VALID [2022-02-20 17:24:29,764 INFO L290 TraceCheckUtils]: 5: Hoare triple {35#true} assume true; {35#true} is VALID [2022-02-20 17:24:29,764 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {35#true} {35#true} #87#return; {35#true} is VALID [2022-02-20 17:24:29,764 INFO L272 TraceCheckUtils]: 7: Hoare triple {35#true} call assume_abort_if_not((if 1bv32 == ~bvsrem32(main_~A~0#1, 2bv32) then 1bv32 else 0bv32)); {35#true} is VALID [2022-02-20 17:24:29,764 INFO L290 TraceCheckUtils]: 8: Hoare triple {35#true} ~cond := #in~cond; {35#true} is VALID [2022-02-20 17:24:29,764 INFO L290 TraceCheckUtils]: 9: Hoare triple {35#true} assume 0bv32 == ~cond;assume false; {35#true} is VALID [2022-02-20 17:24:29,765 INFO L290 TraceCheckUtils]: 10: Hoare triple {35#true} assume true; {35#true} is VALID [2022-02-20 17:24:29,765 INFO L284 TraceCheckUtils]: 11: Hoare quadruple {35#true} {35#true} #89#return; {35#true} is VALID [2022-02-20 17:24:29,765 INFO L290 TraceCheckUtils]: 12: Hoare triple {35#true} main_~u~0#1 := ~bvadd64(1bv64, ~bvmul64(2bv64, ~sign_extendFrom32To64(main_~R~0#1)));main_~v~0#1 := 1bv64;main_~r~0#1 := ~bvsub64(~bvmul64(~sign_extendFrom32To64(main_~R~0#1), ~sign_extendFrom32To64(main_~R~0#1)), ~sign_extendFrom32To64(main_~A~0#1)); {35#true} is VALID [2022-02-20 17:24:29,766 INFO L290 TraceCheckUtils]: 13: Hoare triple {35#true} assume !true; {36#false} is VALID [2022-02-20 17:24:29,766 INFO L272 TraceCheckUtils]: 14: Hoare triple {36#false} call __VERIFIER_assert((if ~bvmul64(4bv64, ~sign_extendFrom32To64(main_~A~0#1)) == ~bvadd64(~bvsub64(~bvsub64(~bvmul64(main_~u~0#1, main_~u~0#1), ~bvmul64(main_~v~0#1, main_~v~0#1)), ~bvmul64(2bv64, main_~u~0#1)), ~bvmul64(2bv64, main_~v~0#1)) then 1bv32 else 0bv32)); {36#false} is VALID [2022-02-20 17:24:29,766 INFO L290 TraceCheckUtils]: 15: Hoare triple {36#false} ~cond := #in~cond; {36#false} is VALID [2022-02-20 17:24:29,766 INFO L290 TraceCheckUtils]: 16: Hoare triple {36#false} assume 0bv32 == ~cond; {36#false} is VALID [2022-02-20 17:24:29,767 INFO L290 TraceCheckUtils]: 17: Hoare triple {36#false} assume !false; {36#false} is VALID [2022-02-20 17:24:29,767 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-02-20 17:24:29,767 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 17:24:29,768 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 17:24:29,768 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [25221204] [2022-02-20 17:24:29,769 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [25221204] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 17:24:29,769 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 17:24:29,769 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [2] imperfect sequences [] total 2 [2022-02-20 17:24:29,770 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [398997097] [2022-02-20 17:24:29,770 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 17:24:29,773 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), 2 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) Word has length 18 [2022-02-20 17:24:29,774 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 17:24:29,776 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), 2 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-02-20 17:24:29,872 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 15 edges. 15 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 17:24:29,873 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 2 states [2022-02-20 17:24:29,873 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 17:24:29,887 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 2 interpolants. [2022-02-20 17:24:29,887 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=1, Invalid=1, Unknown=0, NotChecked=0, Total=2 [2022-02-20 17:24:29,889 INFO L87 Difference]: Start difference. First operand has 32 states, 22 states have (on average 1.5454545454545454) internal successors, (34), 23 states have internal predecessors, (34), 6 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) Second operand has 2 states, 2 states have (on average 5.0) internal successors, (10), 2 states have internal predecessors, (10), 2 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-02-20 17:24:31,069 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:24:31,076 INFO L93 Difference]: Finished difference Result 61 states and 94 transitions. [2022-02-20 17:24:31,077 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 2 states. [2022-02-20 17:24:31,077 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), 2 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) Word has length 18 [2022-02-20 17:24:31,077 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 17:24:31,078 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), 2 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-02-20 17:24:31,085 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2 states to 2 states and 94 transitions. [2022-02-20 17:24:31,085 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), 2 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-02-20 17:24:31,089 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 2 states to 2 states and 94 transitions. [2022-02-20 17:24:31,089 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 2 states and 94 transitions. [2022-02-20 17:24:32,135 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 94 edges. 94 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-02-20 17:24:32,141 INFO L225 Difference]: With dead ends: 61 [2022-02-20 17:24:32,141 INFO L226 Difference]: Without dead ends: 28 [2022-02-20 17:24:32,143 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 17 GetRequests, 17 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 17:24:32,145 INFO L933 BasicCegarLoop]: 41 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, 41 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 17:24:32,146 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [0 Valid, 41 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 0 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 17:24:32,155 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 28 states. [2022-02-20 17:24:32,163 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 28 to 28. [2022-02-20 17:24:32,163 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 17:24:32,163 INFO L82 GeneralOperation]: Start isEquivalent. First operand 28 states. Second operand has 28 states, 19 states have (on average 1.368421052631579) internal successors, (26), 20 states have internal predecessors, (26), 6 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) [2022-02-20 17:24:32,164 INFO L74 IsIncluded]: Start isIncluded. First operand 28 states. Second operand has 28 states, 19 states have (on average 1.368421052631579) internal successors, (26), 20 states have internal predecessors, (26), 6 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) [2022-02-20 17:24:32,164 INFO L87 Difference]: Start difference. First operand 28 states. Second operand has 28 states, 19 states have (on average 1.368421052631579) internal successors, (26), 20 states have internal predecessors, (26), 6 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) [2022-02-20 17:24:32,167 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:24:32,167 INFO L93 Difference]: Finished difference Result 28 states and 37 transitions. [2022-02-20 17:24:32,167 INFO L276 IsEmpty]: Start isEmpty. Operand 28 states and 37 transitions. [2022-02-20 17:24:32,168 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 17:24:32,168 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 17:24:32,168 INFO L74 IsIncluded]: Start isIncluded. First operand has 28 states, 19 states have (on average 1.368421052631579) internal successors, (26), 20 states have internal predecessors, (26), 6 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) Second operand 28 states. [2022-02-20 17:24:32,169 INFO L87 Difference]: Start difference. First operand has 28 states, 19 states have (on average 1.368421052631579) internal successors, (26), 20 states have internal predecessors, (26), 6 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) Second operand 28 states. [2022-02-20 17:24:32,171 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:24:32,171 INFO L93 Difference]: Finished difference Result 28 states and 37 transitions. [2022-02-20 17:24:32,171 INFO L276 IsEmpty]: Start isEmpty. Operand 28 states and 37 transitions. [2022-02-20 17:24:32,172 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 17:24:32,172 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 17:24:32,172 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 17:24:32,172 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 17:24:32,172 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 28 states, 19 states have (on average 1.368421052631579) internal successors, (26), 20 states have internal predecessors, (26), 6 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) [2022-02-20 17:24:32,174 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 28 states to 28 states and 37 transitions. [2022-02-20 17:24:32,175 INFO L78 Accepts]: Start accepts. Automaton has 28 states and 37 transitions. Word has length 18 [2022-02-20 17:24:32,179 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 17:24:32,179 INFO L470 AbstractCegarLoop]: Abstraction has 28 states and 37 transitions. [2022-02-20 17:24:32,179 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), 2 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-02-20 17:24:32,180 INFO L276 IsEmpty]: Start isEmpty. Operand 28 states and 37 transitions. [2022-02-20 17:24:32,180 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 20 [2022-02-20 17:24:32,180 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 17:24:32,180 INFO L514 BasicCegarLoop]: trace histogram [2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 17:24:32,191 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (2)] Ended with exit code 0 [2022-02-20 17:24:32,390 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 2 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 [2022-02-20 17:24:32,391 INFO L402 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 17:24:32,392 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 17:24:32,392 INFO L85 PathProgramCache]: Analyzing trace with hash -1770759922, now seen corresponding path program 1 times [2022-02-20 17:24:32,392 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 17:24:32,392 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [1219106750] [2022-02-20 17:24:32,392 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 17:24:32,392 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 17:24:32,392 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 17:24:32,396 INFO L229 MonitoredProcess]: Starting monitored process 3 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2022-02-20 17:24:32,397 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (3)] Waiting until timeout for monitored process [2022-02-20 17:24:32,484 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 17:24:32,497 INFO L263 TraceCheckSpWp]: Trace formula consists of 42 conjuncts, 3 conjunts are in the unsatisfiable core [2022-02-20 17:24:32,504 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-02-20 17:24:32,505 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-02-20 17:24:32,626 INFO L290 TraceCheckUtils]: 0: Hoare triple {266#true} assume { :begin_inline_ULTIMATE.init } true;#NULL.base, #NULL.offset := 0bv32, 0bv32;assume 0bv1 == #valid[0bv32];assume ~bvult32(0bv32, #StackHeapBarrier);call #Ultimate.allocInit(2bv32, 1bv32);call write~init~intINTTYPE1(48bv8, 1bv32, 0bv32, 1bv32);call write~init~intINTTYPE1(0bv8, 1bv32, 1bv32, 1bv32);call #Ultimate.allocInit(13bv32, 2bv32);call #Ultimate.allocInit(12bv32, 3bv32);~counter~0 := 0bv32; {271#(= ~counter~0 (_ bv0 32))} is VALID [2022-02-20 17:24:32,626 INFO L290 TraceCheckUtils]: 1: Hoare triple {271#(= ~counter~0 (_ bv0 32))} assume { :end_inline_ULTIMATE.init } true;assume { :begin_inline_main } true;havoc main_#res#1;havoc main_#t~nondet4#1, main_#t~nondet5#1, main_#t~post7#1, main_#t~post8#1, main_#t~post6#1, main_~A~0#1, main_~R~0#1, main_~u~0#1, main_~v~0#1, main_~r~0#1;havoc main_~A~0#1;havoc main_~R~0#1;havoc main_~u~0#1;havoc main_~v~0#1;havoc main_~r~0#1;main_~A~0#1 := main_#t~nondet4#1;havoc main_#t~nondet4#1;main_~R~0#1 := main_#t~nondet5#1;havoc main_#t~nondet5#1; {271#(= ~counter~0 (_ bv0 32))} is VALID [2022-02-20 17:24:32,627 INFO L272 TraceCheckUtils]: 2: Hoare triple {271#(= ~counter~0 (_ bv0 32))} call assume_abort_if_not((if ~bvslt64(~bvmul64(~bvsub64(~sign_extendFrom32To64(main_~R~0#1), 1bv64), ~bvsub64(~sign_extendFrom32To64(main_~R~0#1), 1bv64)), ~sign_extendFrom32To64(main_~A~0#1)) then 1bv32 else 0bv32)); {271#(= ~counter~0 (_ bv0 32))} is VALID [2022-02-20 17:24:32,627 INFO L290 TraceCheckUtils]: 3: Hoare triple {271#(= ~counter~0 (_ bv0 32))} ~cond := #in~cond; {271#(= ~counter~0 (_ bv0 32))} is VALID [2022-02-20 17:24:32,628 INFO L290 TraceCheckUtils]: 4: Hoare triple {271#(= ~counter~0 (_ bv0 32))} assume !(0bv32 == ~cond); {271#(= ~counter~0 (_ bv0 32))} is VALID [2022-02-20 17:24:32,628 INFO L290 TraceCheckUtils]: 5: Hoare triple {271#(= ~counter~0 (_ bv0 32))} assume true; {271#(= ~counter~0 (_ bv0 32))} is VALID [2022-02-20 17:24:32,629 INFO L284 TraceCheckUtils]: 6: Hoare quadruple {271#(= ~counter~0 (_ bv0 32))} {271#(= ~counter~0 (_ bv0 32))} #87#return; {271#(= ~counter~0 (_ bv0 32))} is VALID [2022-02-20 17:24:32,629 INFO L272 TraceCheckUtils]: 7: Hoare triple {271#(= ~counter~0 (_ bv0 32))} call assume_abort_if_not((if 1bv32 == ~bvsrem32(main_~A~0#1, 2bv32) then 1bv32 else 0bv32)); {271#(= ~counter~0 (_ bv0 32))} is VALID [2022-02-20 17:24:32,629 INFO L290 TraceCheckUtils]: 8: Hoare triple {271#(= ~counter~0 (_ bv0 32))} ~cond := #in~cond; {271#(= ~counter~0 (_ bv0 32))} is VALID [2022-02-20 17:24:32,630 INFO L290 TraceCheckUtils]: 9: Hoare triple {271#(= ~counter~0 (_ bv0 32))} assume !(0bv32 == ~cond); {271#(= ~counter~0 (_ bv0 32))} is VALID [2022-02-20 17:24:32,630 INFO L290 TraceCheckUtils]: 10: Hoare triple {271#(= ~counter~0 (_ bv0 32))} assume true; {271#(= ~counter~0 (_ bv0 32))} is VALID [2022-02-20 17:24:32,631 INFO L284 TraceCheckUtils]: 11: Hoare quadruple {271#(= ~counter~0 (_ bv0 32))} {271#(= ~counter~0 (_ bv0 32))} #89#return; {271#(= ~counter~0 (_ bv0 32))} is VALID [2022-02-20 17:24:32,631 INFO L290 TraceCheckUtils]: 12: Hoare triple {271#(= ~counter~0 (_ bv0 32))} main_~u~0#1 := ~bvadd64(1bv64, ~bvmul64(2bv64, ~sign_extendFrom32To64(main_~R~0#1)));main_~v~0#1 := 1bv64;main_~r~0#1 := ~bvsub64(~bvmul64(~sign_extendFrom32To64(main_~R~0#1), ~sign_extendFrom32To64(main_~R~0#1)), ~sign_extendFrom32To64(main_~A~0#1)); {271#(= ~counter~0 (_ bv0 32))} is VALID [2022-02-20 17:24:32,631 INFO L290 TraceCheckUtils]: 13: Hoare triple {271#(= ~counter~0 (_ bv0 32))} main_#t~post6#1 := ~counter~0;~counter~0 := ~bvadd32(1bv32, main_#t~post6#1); {311#(= |ULTIMATE.start_main_#t~post6#1| (_ bv0 32))} is VALID [2022-02-20 17:24:32,632 INFO L290 TraceCheckUtils]: 14: Hoare triple {311#(= |ULTIMATE.start_main_#t~post6#1| (_ bv0 32))} assume !~bvslt32(main_#t~post6#1, 5bv32);havoc main_#t~post6#1; {267#false} is VALID [2022-02-20 17:24:32,632 INFO L272 TraceCheckUtils]: 15: Hoare triple {267#false} call __VERIFIER_assert((if ~bvmul64(4bv64, ~sign_extendFrom32To64(main_~A~0#1)) == ~bvadd64(~bvsub64(~bvsub64(~bvmul64(main_~u~0#1, main_~u~0#1), ~bvmul64(main_~v~0#1, main_~v~0#1)), ~bvmul64(2bv64, main_~u~0#1)), ~bvmul64(2bv64, main_~v~0#1)) then 1bv32 else 0bv32)); {267#false} is VALID [2022-02-20 17:24:32,632 INFO L290 TraceCheckUtils]: 16: Hoare triple {267#false} ~cond := #in~cond; {267#false} is VALID [2022-02-20 17:24:32,632 INFO L290 TraceCheckUtils]: 17: Hoare triple {267#false} assume 0bv32 == ~cond; {267#false} is VALID [2022-02-20 17:24:32,633 INFO L290 TraceCheckUtils]: 18: Hoare triple {267#false} assume !false; {267#false} is VALID [2022-02-20 17:24:32,633 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-02-20 17:24:32,633 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-02-20 17:24:32,633 INFO L144 FreeRefinementEngine]: Strategy WOLF found an infeasible trace [2022-02-20 17:24:32,633 INFO L338 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleMathsat [1219106750] [2022-02-20 17:24:32,633 INFO L165 FreeRefinementEngine]: IpTcStrategyModuleMathsat [1219106750] provided 1 perfect and 0 imperfect interpolant sequences [2022-02-20 17:24:32,634 INFO L191 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-02-20 17:24:32,634 INFO L204 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-02-20 17:24:32,634 INFO L118 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1618952329] [2022-02-20 17:24:32,634 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-02-20 17:24:32,635 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 2.75) internal successors, (11), 3 states have internal predecessors, (11), 2 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) Word has length 19 [2022-02-20 17:24:32,635 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-02-20 17:24:32,635 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with has 4 states, 4 states have (on average 2.75) internal successors, (11), 3 states have internal predecessors, (11), 2 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-02-20 17:24:32,739 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 17:24:32,739 INFO L546 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-02-20 17:24:32,740 INFO L108 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy WOLF [2022-02-20 17:24:32,740 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-02-20 17:24:32,740 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-02-20 17:24:32,740 INFO L87 Difference]: Start difference. First operand 28 states and 37 transitions. Second operand has 4 states, 4 states have (on average 2.75) internal successors, (11), 3 states have internal predecessors, (11), 2 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-02-20 17:24:35,822 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:24:35,822 INFO L93 Difference]: Finished difference Result 37 states and 46 transitions. [2022-02-20 17:24:35,822 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-02-20 17:24:35,823 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 2.75) internal successors, (11), 3 states have internal predecessors, (11), 2 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) Word has length 19 [2022-02-20 17:24:35,823 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-02-20 17:24:35,823 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 2.75) internal successors, (11), 3 states have internal predecessors, (11), 2 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-02-20 17:24:35,824 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 46 transitions. [2022-02-20 17:24:35,824 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 2.75) internal successors, (11), 3 states have internal predecessors, (11), 2 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-02-20 17:24:35,826 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 46 transitions. [2022-02-20 17:24:35,826 INFO L86 InductivityCheck]: Starting indutivity check of a Floyd-Hoare automaton with 4 states and 46 transitions. [2022-02-20 17:24:36,223 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 17:24:36,224 INFO L225 Difference]: With dead ends: 37 [2022-02-20 17:24:36,224 INFO L226 Difference]: Without dead ends: 30 [2022-02-20 17:24:36,224 INFO L932 BasicCegarLoop]: 0 DeclaredPredicates, 18 GetRequests, 16 SyntacticMatches, 0 SemanticMatches, 2 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-02-20 17:24:36,225 INFO L933 BasicCegarLoop]: 35 mSDtfsCounter, 0 mSDsluCounter, 56 mSDsCounter, 0 mSdLazyCounter, 10 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 0 SdHoareTripleChecker+Valid, 91 SdHoareTripleChecker+Invalid, 10 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 10 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-02-20 17:24:36,226 INFO L934 BasicCegarLoop]: SdHoareTripleChecker [0 Valid, 91 Invalid, 10 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 10 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-02-20 17:24:36,226 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 30 states. [2022-02-20 17:24:36,229 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 30 to 30. [2022-02-20 17:24:36,229 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-02-20 17:24:36,230 INFO L82 GeneralOperation]: Start isEquivalent. First operand 30 states. Second operand has 30 states, 21 states have (on average 1.3333333333333333) internal successors, (28), 22 states have internal predecessors, (28), 6 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) [2022-02-20 17:24:36,230 INFO L74 IsIncluded]: Start isIncluded. First operand 30 states. Second operand has 30 states, 21 states have (on average 1.3333333333333333) internal successors, (28), 22 states have internal predecessors, (28), 6 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) [2022-02-20 17:24:36,230 INFO L87 Difference]: Start difference. First operand 30 states. Second operand has 30 states, 21 states have (on average 1.3333333333333333) internal successors, (28), 22 states have internal predecessors, (28), 6 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) [2022-02-20 17:24:36,232 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:24:36,232 INFO L93 Difference]: Finished difference Result 30 states and 39 transitions. [2022-02-20 17:24:36,232 INFO L276 IsEmpty]: Start isEmpty. Operand 30 states and 39 transitions. [2022-02-20 17:24:36,233 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 17:24:36,233 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 17:24:36,233 INFO L74 IsIncluded]: Start isIncluded. First operand has 30 states, 21 states have (on average 1.3333333333333333) internal successors, (28), 22 states have internal predecessors, (28), 6 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) Second operand 30 states. [2022-02-20 17:24:36,233 INFO L87 Difference]: Start difference. First operand has 30 states, 21 states have (on average 1.3333333333333333) internal successors, (28), 22 states have internal predecessors, (28), 6 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) Second operand 30 states. [2022-02-20 17:24:36,235 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-02-20 17:24:36,235 INFO L93 Difference]: Finished difference Result 30 states and 39 transitions. [2022-02-20 17:24:36,235 INFO L276 IsEmpty]: Start isEmpty. Operand 30 states and 39 transitions. [2022-02-20 17:24:36,235 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-02-20 17:24:36,236 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-02-20 17:24:36,236 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-02-20 17:24:36,236 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-02-20 17:24:36,236 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 30 states, 21 states have (on average 1.3333333333333333) internal successors, (28), 22 states have internal predecessors, (28), 6 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (5), 5 states have call predecessors, (5), 5 states have call successors, (5) [2022-02-20 17:24:36,237 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 30 states to 30 states and 39 transitions. [2022-02-20 17:24:36,238 INFO L78 Accepts]: Start accepts. Automaton has 30 states and 39 transitions. Word has length 19 [2022-02-20 17:24:36,238 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-02-20 17:24:36,238 INFO L470 AbstractCegarLoop]: Abstraction has 30 states and 39 transitions. [2022-02-20 17:24:36,238 INFO L471 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 4 states have (on average 2.75) internal successors, (11), 3 states have internal predecessors, (11), 2 states have call successors, (3), 2 states have call predecessors, (3), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-02-20 17:24:36,238 INFO L276 IsEmpty]: Start isEmpty. Operand 30 states and 39 transitions. [2022-02-20 17:24:36,239 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 20 [2022-02-20 17:24:36,239 INFO L506 BasicCegarLoop]: Found error trace [2022-02-20 17:24:36,239 INFO L514 BasicCegarLoop]: trace histogram [2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-02-20 17:24:36,248 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (3)] Ended with exit code 0 [2022-02-20 17:24:36,443 WARN L452 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 3 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 [2022-02-20 17:24:36,443 INFO L402 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-02-20 17:24:36,444 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-02-20 17:24:36,444 INFO L85 PathProgramCache]: Analyzing trace with hash -1769091626, now seen corresponding path program 1 times [2022-02-20 17:24:36,444 INFO L126 FreeRefinementEngine]: Executing refinement strategy WOLF [2022-02-20 17:24:36,444 INFO L338 FreeRefinementEngine]: Using trace check IpTcStrategyModuleMathsat [283129611] [2022-02-20 17:24:36,445 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-02-20 17:24:36,445 INFO L173 SolverBuilder]: Constructing external solver with command: mathsat -unsat_core_generation=3 [2022-02-20 17:24:36,445 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat [2022-02-20 17:24:36,446 INFO L229 MonitoredProcess]: Starting monitored process 4 with /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (exit command is (exit), workingDir is null) [2022-02-20 17:24:36,447 INFO L327 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/mathsat -unsat_core_generation=3 (4)] Waiting until timeout for monitored process