/usr/bin/java -ea -Xmx8000000000 -Xss4m -jar ./plugins/org.eclipse.equinox.launcher_1.5.800.v20200727-1323.jar -data @noDefault -ultimatedata ./data --core.log.level.for.class de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=WARN -tc ../../../trunk/examples/toolchains/AutomizerC.xml -s ../../../trunk/examples/settings/automizer/acceleratedInterpolation/acceleratedInterpolationJordan_32.epf -i ../../../trunk/examples/svcomp/nla-digbench-scaling/prod4br-ll_unwindbound20.c -------------------------------------------------------------------------------- This is Ultimate 0.2.2-dev-e106359-m [2022-04-15 10:22:13,788 INFO L177 SettingsManager]: Resetting all preferences to default values... [2022-04-15 10:22:13,790 INFO L181 SettingsManager]: Resetting UltimateCore preferences to default values [2022-04-15 10:22:13,816 INFO L184 SettingsManager]: Ultimate Commandline Interface provides no preferences, ignoring... [2022-04-15 10:22:13,817 INFO L181 SettingsManager]: Resetting Boogie Preprocessor preferences to default values [2022-04-15 10:22:13,818 INFO L181 SettingsManager]: Resetting Boogie Procedure Inliner preferences to default values [2022-04-15 10:22:13,821 INFO L181 SettingsManager]: Resetting Abstract Interpretation preferences to default values [2022-04-15 10:22:13,825 INFO L181 SettingsManager]: Resetting LassoRanker preferences to default values [2022-04-15 10:22:13,826 INFO L181 SettingsManager]: Resetting Reaching Definitions preferences to default values [2022-04-15 10:22:13,827 INFO L181 SettingsManager]: Resetting SyntaxChecker preferences to default values [2022-04-15 10:22:13,828 INFO L181 SettingsManager]: Resetting Sifa preferences to default values [2022-04-15 10:22:13,829 INFO L184 SettingsManager]: Büchi Program Product provides no preferences, ignoring... [2022-04-15 10:22:13,829 INFO L181 SettingsManager]: Resetting LTL2Aut preferences to default values [2022-04-15 10:22:13,833 INFO L181 SettingsManager]: Resetting PEA to Boogie preferences to default values [2022-04-15 10:22:13,833 INFO L181 SettingsManager]: Resetting BlockEncodingV2 preferences to default values [2022-04-15 10:22:13,834 INFO L181 SettingsManager]: Resetting ChcToBoogie preferences to default values [2022-04-15 10:22:13,834 INFO L181 SettingsManager]: Resetting AutomataScriptInterpreter preferences to default values [2022-04-15 10:22:13,835 INFO L181 SettingsManager]: Resetting BuchiAutomizer preferences to default values [2022-04-15 10:22:13,836 INFO L181 SettingsManager]: Resetting CACSL2BoogieTranslator preferences to default values [2022-04-15 10:22:13,839 INFO L181 SettingsManager]: Resetting CodeCheck preferences to default values [2022-04-15 10:22:13,840 INFO L181 SettingsManager]: Resetting HornVerifier preferences to default values [2022-04-15 10:22:13,842 INFO L181 SettingsManager]: Resetting InvariantSynthesis preferences to default values [2022-04-15 10:22:13,843 INFO L181 SettingsManager]: Resetting RCFGBuilder preferences to default values [2022-04-15 10:22:13,843 INFO L181 SettingsManager]: Resetting Referee preferences to default values [2022-04-15 10:22:13,844 INFO L181 SettingsManager]: Resetting TraceAbstraction preferences to default values [2022-04-15 10:22:13,845 INFO L184 SettingsManager]: TraceAbstractionConcurrent provides no preferences, ignoring... [2022-04-15 10:22:13,845 INFO L184 SettingsManager]: TraceAbstractionWithAFAs provides no preferences, ignoring... [2022-04-15 10:22:13,845 INFO L181 SettingsManager]: Resetting TreeAutomizer preferences to default values [2022-04-15 10:22:13,846 INFO L181 SettingsManager]: Resetting IcfgToChc preferences to default values [2022-04-15 10:22:13,846 INFO L181 SettingsManager]: Resetting IcfgTransformer preferences to default values [2022-04-15 10:22:13,846 INFO L184 SettingsManager]: ReqToTest provides no preferences, ignoring... [2022-04-15 10:22:13,847 INFO L181 SettingsManager]: Resetting Boogie Printer preferences to default values [2022-04-15 10:22:13,847 INFO L181 SettingsManager]: Resetting ChcSmtPrinter preferences to default values [2022-04-15 10:22:13,847 INFO L181 SettingsManager]: Resetting ReqPrinter preferences to default values [2022-04-15 10:22:13,848 INFO L181 SettingsManager]: Resetting Witness Printer preferences to default values [2022-04-15 10:22:13,848 INFO L184 SettingsManager]: Boogie PL CUP Parser provides no preferences, ignoring... [2022-04-15 10:22:13,848 INFO L181 SettingsManager]: Resetting CDTParser preferences to default values [2022-04-15 10:22:13,849 INFO L184 SettingsManager]: AutomataScriptParser provides no preferences, ignoring... [2022-04-15 10:22:13,849 INFO L184 SettingsManager]: ReqParser provides no preferences, ignoring... [2022-04-15 10:22:13,849 INFO L181 SettingsManager]: Resetting SmtParser preferences to default values [2022-04-15 10:22:13,850 INFO L181 SettingsManager]: Resetting Witness Parser preferences to default values [2022-04-15 10:22:13,855 INFO L188 SettingsManager]: Finished resetting all preferences to default values... [2022-04-15 10:22:13,856 INFO L101 SettingsManager]: Beginning loading settings from /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/settings/automizer/acceleratedInterpolation/acceleratedInterpolationJordan_32.epf [2022-04-15 10:22:13,863 INFO L113 SettingsManager]: Loading preferences was successful [2022-04-15 10:22:13,864 INFO L115 SettingsManager]: Preferences different from defaults after loading the file: [2022-04-15 10:22:13,864 INFO L136 SettingsManager]: Preferences of CACSL2BoogieTranslator differ from their defaults: [2022-04-15 10:22:13,865 INFO L138 SettingsManager]: * sizeof long=4 [2022-04-15 10:22:13,865 INFO L138 SettingsManager]: * Overapproximate operations on floating types=true [2022-04-15 10:22:13,865 INFO L138 SettingsManager]: * sizeof POINTER=4 [2022-04-15 10:22:13,865 INFO L138 SettingsManager]: * Check division by zero=IGNORE [2022-04-15 10:22:13,865 INFO L138 SettingsManager]: * Pointer to allocated memory at dereference=IGNORE [2022-04-15 10:22:13,865 INFO L138 SettingsManager]: * If two pointers are subtracted or compared they have the same base address=IGNORE [2022-04-15 10:22:13,866 INFO L138 SettingsManager]: * Check array bounds for arrays that are off heap=IGNORE [2022-04-15 10:22:13,866 INFO L138 SettingsManager]: * sizeof long double=12 [2022-04-15 10:22:13,866 INFO L138 SettingsManager]: * Check if freed pointer was valid=false [2022-04-15 10:22:13,866 INFO L138 SettingsManager]: * Use constant arrays=true [2022-04-15 10:22:13,866 INFO L138 SettingsManager]: * Pointer base address is valid at dereference=IGNORE [2022-04-15 10:22:13,866 INFO L136 SettingsManager]: Preferences of RCFGBuilder differ from their defaults: [2022-04-15 10:22:13,866 INFO L138 SettingsManager]: * Size of a code block=SequenceOfStatements [2022-04-15 10:22:13,866 INFO L138 SettingsManager]: * To the following directory=./dump/ [2022-04-15 10:22:13,866 INFO L138 SettingsManager]: * SMT solver=External_DefaultMode [2022-04-15 10:22:13,866 INFO L138 SettingsManager]: * Command for external solver=z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-15 10:22:13,866 INFO L136 SettingsManager]: Preferences of TraceAbstraction differ from their defaults: [2022-04-15 10:22:13,867 INFO L138 SettingsManager]: * Compute Interpolants along a Counterexample=Craig_NestedInterpolation [2022-04-15 10:22:13,867 INFO L138 SettingsManager]: * Trace refinement strategy=ACCELERATED_INTERPOLATION [2022-04-15 10:22:13,867 INFO L138 SettingsManager]: * Trace refinement strategy used in Accelerated Interpolation=CAMEL [2022-04-15 10:22:13,867 INFO L138 SettingsManager]: * Compute Hoare Annotation of negated interpolant automaton, abstraction and CFG=true [2022-04-15 10:22:13,867 INFO L138 SettingsManager]: * Loop acceleration method that is used by accelerated interpolation=JORDAN [2022-04-15 10:22:13,868 INFO L138 SettingsManager]: * Use separate solver for trace checks=false 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.core: Log level for class -> de.uni_freiburg.informatik.ultimate.lib.smtlibutils.quantifier.QuantifierPusher=WARN; [2022-04-15 10:22:14,009 INFO L75 nceAwareModelManager]: Repository-Root is: /tmp [2022-04-15 10:22:14,021 INFO L261 ainManager$Toolchain]: [Toolchain 1]: Applicable parser(s) successfully (re)initialized [2022-04-15 10:22:14,022 INFO L217 ainManager$Toolchain]: [Toolchain 1]: Toolchain selected. [2022-04-15 10:22:14,023 INFO L271 PluginConnector]: Initializing CDTParser... [2022-04-15 10:22:14,023 INFO L275 PluginConnector]: CDTParser initialized [2022-04-15 10:22:14,024 INFO L432 ainManager$Toolchain]: [Toolchain 1]: Parsing single file: /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/../../../trunk/examples/svcomp/nla-digbench-scaling/prod4br-ll_unwindbound20.c [2022-04-15 10:22:14,058 INFO L220 CDTParser]: Created temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/86abe309d/73b1c6ab41424efd9fbe54b56a344b07/FLAG091aa6240 [2022-04-15 10:22:14,390 INFO L306 CDTParser]: Found 1 translation units. [2022-04-15 10:22:14,390 INFO L160 CDTParser]: Scanning /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/prod4br-ll_unwindbound20.c [2022-04-15 10:22:14,394 INFO L349 CDTParser]: About to delete temporary CDT project at /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/86abe309d/73b1c6ab41424efd9fbe54b56a344b07/FLAG091aa6240 [2022-04-15 10:22:14,829 INFO L357 CDTParser]: Successfully deleted /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/data/86abe309d/73b1c6ab41424efd9fbe54b56a344b07 [2022-04-15 10:22:14,831 INFO L299 ainManager$Toolchain]: ####################### [Toolchain 1] ####################### [2022-04-15 10:22:14,832 INFO L131 ToolchainWalker]: Walking toolchain with 4 elements. [2022-04-15 10:22:14,839 INFO L113 PluginConnector]: ------------------------CACSL2BoogieTranslator---------------------------- [2022-04-15 10:22:14,839 INFO L271 PluginConnector]: Initializing CACSL2BoogieTranslator... [2022-04-15 10:22:14,842 INFO L275 PluginConnector]: CACSL2BoogieTranslator initialized [2022-04-15 10:22:14,842 INFO L185 PluginConnector]: Executing the observer ACSLObjectContainerObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 15.04 10:22:14" (1/1) ... [2022-04-15 10:22:14,843 INFO L205 PluginConnector]: Invalid model from CACSL2BoogieTranslator for observer de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator.ACSLObjectContainerObserver@6f6f250c and model type de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 10:22:14, skipping insertion in model container [2022-04-15 10:22:14,843 INFO L185 PluginConnector]: Executing the observer CACSL2BoogieTranslatorObserver from plugin CACSL2BoogieTranslator for "CDTParser AST 15.04 10:22:14" (1/1) ... [2022-04-15 10:22:14,847 INFO L145 MainTranslator]: Starting translation in SV-COMP mode [2022-04-15 10:22:14,857 INFO L178 MainTranslator]: Built tables and reachable declarations [2022-04-15 10:22:14,966 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/prod4br-ll_unwindbound20.c[524,537] [2022-04-15 10:22:14,978 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-15 10:22:14,984 INFO L203 MainTranslator]: Completed pre-run [2022-04-15 10:22:14,991 WARN L230 ndardFunctionHandler]: Function reach_error is already implemented but we override the implementation for the call at /storage/repos/ultimate/trunk/examples/svcomp/nla-digbench-scaling/prod4br-ll_unwindbound20.c[524,537] [2022-04-15 10:22:14,997 INFO L210 PostProcessor]: Analyzing one entry point: main [2022-04-15 10:22:15,005 INFO L208 MainTranslator]: Completed translation [2022-04-15 10:22:15,006 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 10:22:15 WrapperNode [2022-04-15 10:22:15,006 INFO L132 PluginConnector]: ------------------------ END CACSL2BoogieTranslator---------------------------- [2022-04-15 10:22:15,006 INFO L113 PluginConnector]: ------------------------Boogie Preprocessor---------------------------- [2022-04-15 10:22:15,006 INFO L271 PluginConnector]: Initializing Boogie Preprocessor... [2022-04-15 10:22:15,007 INFO L275 PluginConnector]: Boogie Preprocessor initialized [2022-04-15 10:22:15,013 INFO L185 PluginConnector]: Executing the observer EnsureBoogieModelObserver from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 10:22:15" (1/1) ... [2022-04-15 10:22:15,013 INFO L185 PluginConnector]: Executing the observer TypeChecker from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 10:22:15" (1/1) ... [2022-04-15 10:22:15,017 INFO L185 PluginConnector]: Executing the observer ConstExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 10:22:15" (1/1) ... [2022-04-15 10:22:15,017 INFO L185 PluginConnector]: Executing the observer StructExpander from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 10:22:15" (1/1) ... [2022-04-15 10:22:15,021 INFO L185 PluginConnector]: Executing the observer UnstructureCode from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 10:22:15" (1/1) ... [2022-04-15 10:22:15,023 INFO L185 PluginConnector]: Executing the observer FunctionInliner from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 10:22:15" (1/1) ... [2022-04-15 10:22:15,024 INFO L185 PluginConnector]: Executing the observer BoogieSymbolTableConstructor from plugin Boogie Preprocessor for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 10:22:15" (1/1) ... [2022-04-15 10:22:15,025 INFO L132 PluginConnector]: ------------------------ END Boogie Preprocessor---------------------------- [2022-04-15 10:22:15,026 INFO L113 PluginConnector]: ------------------------RCFGBuilder---------------------------- [2022-04-15 10:22:15,026 INFO L271 PluginConnector]: Initializing RCFGBuilder... [2022-04-15 10:22:15,026 INFO L275 PluginConnector]: RCFGBuilder initialized [2022-04-15 10:22:15,026 INFO L185 PluginConnector]: Executing the observer RCFGBuilderObserver from plugin RCFGBuilder for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 10:22:15" (1/1) ... [2022-04-15 10:22:15,031 INFO L173 SolverBuilder]: Constructing external solver with command: z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 [2022-04-15 10:22:15,038 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 10:22:15,047 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-04-15 10:22:15,074 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-04-15 10:22:15,092 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.init [2022-04-15 10:22:15,092 INFO L138 BoogieDeclarations]: Found implementation of procedure ULTIMATE.start [2022-04-15 10:22:15,092 INFO L138 BoogieDeclarations]: Found implementation of procedure reach_error [2022-04-15 10:22:15,092 INFO L138 BoogieDeclarations]: Found implementation of procedure assume_abort_if_not [2022-04-15 10:22:15,092 INFO L138 BoogieDeclarations]: Found implementation of procedure __VERIFIER_assert [2022-04-15 10:22:15,092 INFO L138 BoogieDeclarations]: Found implementation of procedure main [2022-04-15 10:22:15,092 INFO L130 BoogieDeclarations]: Found specification of procedure abort [2022-04-15 10:22:15,092 INFO L130 BoogieDeclarations]: Found specification of procedure __assert_fail [2022-04-15 10:22:15,093 INFO L130 BoogieDeclarations]: Found specification of procedure reach_error [2022-04-15 10:22:15,093 INFO L130 BoogieDeclarations]: Found specification of procedure #Ultimate.allocInit [2022-04-15 10:22:15,093 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_nondet_int [2022-04-15 10:22:15,093 INFO L130 BoogieDeclarations]: Found specification of procedure assume_abort_if_not [2022-04-15 10:22:15,093 INFO L130 BoogieDeclarations]: Found specification of procedure __VERIFIER_assert [2022-04-15 10:22:15,093 INFO L130 BoogieDeclarations]: Found specification of procedure main [2022-04-15 10:22:15,093 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.init [2022-04-15 10:22:15,093 INFO L130 BoogieDeclarations]: Found specification of procedure write~init~int [2022-04-15 10:22:15,093 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.start [2022-04-15 10:22:15,093 INFO L130 BoogieDeclarations]: Found specification of procedure write~int [2022-04-15 10:22:15,093 INFO L130 BoogieDeclarations]: Found specification of procedure read~int [2022-04-15 10:22:15,093 INFO L130 BoogieDeclarations]: Found specification of procedure ULTIMATE.dealloc [2022-04-15 10:22:15,138 INFO L234 CfgBuilder]: Building ICFG [2022-04-15 10:22:15,140 INFO L260 CfgBuilder]: Building CFG for each procedure with an implementation [2022-04-15 10:22:15,275 INFO L275 CfgBuilder]: Performing block encoding [2022-04-15 10:22:15,280 INFO L294 CfgBuilder]: Using the 1 location(s) as analysis (start of procedure ULTIMATE.start) [2022-04-15 10:22:15,280 INFO L299 CfgBuilder]: Removed 1 assume(true) statements. [2022-04-15 10:22:15,281 INFO L202 PluginConnector]: Adding new model de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 15.04 10:22:15 BoogieIcfgContainer [2022-04-15 10:22:15,281 INFO L132 PluginConnector]: ------------------------ END RCFGBuilder---------------------------- [2022-04-15 10:22:15,282 INFO L113 PluginConnector]: ------------------------TraceAbstraction---------------------------- [2022-04-15 10:22:15,282 INFO L271 PluginConnector]: Initializing TraceAbstraction... [2022-04-15 10:22:15,284 INFO L275 PluginConnector]: TraceAbstraction initialized [2022-04-15 10:22:15,284 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "CDTParser AST 15.04 10:22:14" (1/3) ... [2022-04-15 10:22:15,285 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@73b1765e and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 15.04 10:22:15, skipping insertion in model container [2022-04-15 10:22:15,285 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.cacsl2boogietranslator AST 15.04 10:22:15" (2/3) ... [2022-04-15 10:22:15,285 INFO L205 PluginConnector]: Invalid model from TraceAbstraction for observer de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionObserver@73b1765e and model type de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction AST 15.04 10:22:15, skipping insertion in model container [2022-04-15 10:22:15,285 INFO L185 PluginConnector]: Executing the observer TraceAbstractionObserver from plugin TraceAbstraction for "de.uni_freiburg.informatik.ultimate.plugins.generator.rcfgbuilder CFG 15.04 10:22:15" (3/3) ... [2022-04-15 10:22:15,286 INFO L111 eAbstractionObserver]: Analyzing ICFG prod4br-ll_unwindbound20.c [2022-04-15 10:22:15,289 INFO L202 ceAbstractionStarter]: Automizer settings: Hoare:true NWA Interpolation:Craig_NestedInterpolation Determinization: PREDICATE_ABSTRACTION [2022-04-15 10:22:15,289 INFO L161 ceAbstractionStarter]: Applying trace abstraction to program that has 1 error locations. [2022-04-15 10:22:15,315 INFO L339 AbstractCegarLoop]: ======== Iteration 0 == of CEGAR loop == AllErrorsAtOnce ======== [2022-04-15 10:22:15,321 INFO L340 AbstractCegarLoop]: Settings: SEPARATE_VIOLATION_CHECK=true, mInterprocedural=true, mMaxIterations=1000000, mWatchIteration=1000000, mArtifact=RCFG, mInterpolation=Craig_NestedInterpolation, mInterpolantAutomaton=STRAIGHT_LINE, mDumpAutomata=false, mAutomataFormat=ATS_NUMERATE, mDumpPath=., mDeterminiation=PREDICATE_ABSTRACTION, mMinimize=MINIMIZE_SEVPA, mHoare=true, mAutomataTypeConcurrency=FINITE_AUTOMATA, mHoareTripleChecks=INCREMENTAL, mHoareAnnotationPositions=All, 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 [2022-04-15 10:22:15,322 INFO L341 AbstractCegarLoop]: Starting to check reachability of 1 error locations. [2022-04-15 10:22:15,349 INFO L276 IsEmpty]: Start isEmpty. Operand has 32 states, 20 states have (on average 1.45) internal successors, (29), 21 states have internal predecessors, (29), 6 states have call successors, (6), 4 states have call predecessors, (6), 4 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) [2022-04-15 10:22:15,354 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 18 [2022-04-15 10:22:15,354 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 10:22:15,354 INFO L499 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 10:22:15,355 INFO L403 AbstractCegarLoop]: === Iteration 1 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 10:22:15,358 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 10:22:15,358 INFO L85 PathProgramCache]: Analyzing trace with hash 1717894843, now seen corresponding path program 1 times [2022-04-15 10:22:15,377 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 10:22:15,377 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1831507637] [2022-04-15 10:22:15,385 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 10:22:15,386 INFO L85 PathProgramCache]: Analyzing trace with hash 1717894843, now seen corresponding path program 2 times [2022-04-15 10:22:15,388 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 10:22:15,388 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [675517188] [2022-04-15 10:22:15,389 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 10:22:15,389 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 10:22:15,451 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 10:22:15,490 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 0 [2022-04-15 10:22:15,494 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 10:22:15,504 INFO L290 TraceCheckUtils]: 0: Hoare triple {44#(and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #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-04-15 10:22:15,504 INFO L290 TraceCheckUtils]: 1: Hoare triple {35#true} assume true; {35#true} is VALID [2022-04-15 10:22:15,505 INFO L284 TraceCheckUtils]: 2: Hoare quadruple {35#true} {35#true} #77#return; {35#true} is VALID [2022-04-15 10:22:15,505 INFO L376 atingTraceCheckCraig]: Compute interpolants for subsequence at non-pending call position 6 [2022-04-15 10:22:15,507 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 10:22:15,511 INFO L290 TraceCheckUtils]: 0: Hoare triple {35#true} ~cond := #in~cond; {35#true} is VALID [2022-04-15 10:22:15,512 INFO L290 TraceCheckUtils]: 1: Hoare triple {35#true} assume 0 == ~cond;assume false; {36#false} is VALID [2022-04-15 10:22:15,512 INFO L290 TraceCheckUtils]: 2: Hoare triple {36#false} assume true; {36#false} is VALID [2022-04-15 10:22:15,512 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {36#false} {35#true} #69#return; {36#false} is VALID [2022-04-15 10:22:15,515 INFO L272 TraceCheckUtils]: 0: Hoare triple {35#true} call ULTIMATE.init(); {44#(and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} is VALID [2022-04-15 10:22:15,515 INFO L290 TraceCheckUtils]: 1: Hoare triple {44#(and (= ~counter~0 |old(~counter~0)|) (= |#NULL.offset| |old(#NULL.offset)|) (= |old(#NULL.base)| |#NULL.base|))} #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-04-15 10:22:15,515 INFO L290 TraceCheckUtils]: 2: Hoare triple {35#true} assume true; {35#true} is VALID [2022-04-15 10:22:15,516 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {35#true} {35#true} #77#return; {35#true} is VALID [2022-04-15 10:22:15,516 INFO L272 TraceCheckUtils]: 4: Hoare triple {35#true} call #t~ret7 := main(); {35#true} is VALID [2022-04-15 10:22:15,516 INFO L290 TraceCheckUtils]: 5: Hoare triple {35#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {35#true} is VALID [2022-04-15 10:22:15,517 INFO L272 TraceCheckUtils]: 6: Hoare triple {35#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {35#true} is VALID [2022-04-15 10:22:15,517 INFO L290 TraceCheckUtils]: 7: Hoare triple {35#true} ~cond := #in~cond; {35#true} is VALID [2022-04-15 10:22:15,518 INFO L290 TraceCheckUtils]: 8: Hoare triple {35#true} assume 0 == ~cond;assume false; {36#false} is VALID [2022-04-15 10:22:15,518 INFO L290 TraceCheckUtils]: 9: Hoare triple {36#false} assume true; {36#false} is VALID [2022-04-15 10:22:15,518 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {36#false} {35#true} #69#return; {36#false} is VALID [2022-04-15 10:22:15,518 INFO L290 TraceCheckUtils]: 11: Hoare triple {36#false} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0; {36#false} is VALID [2022-04-15 10:22:15,520 INFO L290 TraceCheckUtils]: 12: Hoare triple {36#false} assume !true; {36#false} is VALID [2022-04-15 10:22:15,520 INFO L272 TraceCheckUtils]: 13: Hoare triple {36#false} call __VERIFIER_assert((if ~q~0 == ~x~0 * ~y~0 then 1 else 0)); {36#false} is VALID [2022-04-15 10:22:15,520 INFO L290 TraceCheckUtils]: 14: Hoare triple {36#false} ~cond := #in~cond; {36#false} is VALID [2022-04-15 10:22:15,520 INFO L290 TraceCheckUtils]: 15: Hoare triple {36#false} assume 0 == ~cond; {36#false} is VALID [2022-04-15 10:22:15,520 INFO L290 TraceCheckUtils]: 16: Hoare triple {36#false} assume !false; {36#false} is VALID [2022-04-15 10:22:15,520 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-15 10:22:15,521 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 10:22:15,521 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [675517188] [2022-04-15 10:22:15,522 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleSmtInterpolCraig [675517188] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 10:22:15,522 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 10:22:15,522 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-15 10:22:15,526 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 10:22:15,527 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1831507637] [2022-04-15 10:22:15,527 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1831507637] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 10:22:15,527 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 10:22:15,527 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [3] imperfect sequences [] total 3 [2022-04-15 10:22:15,528 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1211748861] [2022-04-15 10:22:15,528 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 10:22:15,532 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) Word has length 17 [2022-04-15 10:22:15,533 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 10:22:15,535 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-15 10:22:15,566 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 17 edges. 17 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 10:22:15,566 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 3 states [2022-04-15 10:22:15,566 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 10:22:15,594 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 3 interpolants. [2022-04-15 10:22:15,595 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-15 10:22:15,597 INFO L87 Difference]: Start difference. First operand has 32 states, 20 states have (on average 1.45) internal successors, (29), 21 states have internal predecessors, (29), 6 states have call successors, (6), 4 states have call predecessors, (6), 4 states have return successors, (6), 6 states have call predecessors, (6), 6 states have call successors, (6) Second operand has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-15 10:22:15,754 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 10:22:15,754 INFO L93 Difference]: Finished difference Result 56 states and 77 transitions. [2022-04-15 10:22:15,754 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 3 states. [2022-04-15 10:22:15,755 INFO L78 Accepts]: Start accepts. Automaton has has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) Word has length 17 [2022-04-15 10:22:15,755 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 10:22:15,759 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-15 10:22:15,769 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 77 transitions. [2022-04-15 10:22:15,770 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-15 10:22:15,780 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 3 states to 3 states and 77 transitions. [2022-04-15 10:22:15,780 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 3 states and 77 transitions. [2022-04-15 10:22:15,880 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 77 edges. 77 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 10:22:15,886 INFO L225 Difference]: With dead ends: 56 [2022-04-15 10:22:15,886 INFO L226 Difference]: Without dead ends: 28 [2022-04-15 10:22:15,888 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 7 GetRequests, 6 SyntacticMatches, 0 SemanticMatches, 1 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 0 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=3, Invalid=3, Unknown=0, NotChecked=0, Total=6 [2022-04-15 10:22:15,890 INFO L913 BasicCegarLoop]: 36 mSDtfsCounter, 10 mSDsluCounter, 4 mSDsCounter, 0 mSdLazyCounter, 19 mSolverCounterSat, 5 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 11 SdHoareTripleChecker+Valid, 40 SdHoareTripleChecker+Invalid, 24 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 5 IncrementalHoareTripleChecker+Valid, 19 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-15 10:22:15,891 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [11 Valid, 40 Invalid, 24 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [5 Valid, 19 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-15 10:22:15,902 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 28 states. [2022-04-15 10:22:15,912 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 28 to 27. [2022-04-15 10:22:15,912 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 10:22:15,912 INFO L82 GeneralOperation]: Start isEquivalent. First operand 28 states. Second operand has 27 states, 17 states have (on average 1.3529411764705883) internal successors, (23), 18 states have internal predecessors, (23), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-15 10:22:15,913 INFO L74 IsIncluded]: Start isIncluded. First operand 28 states. Second operand has 27 states, 17 states have (on average 1.3529411764705883) internal successors, (23), 18 states have internal predecessors, (23), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-15 10:22:15,913 INFO L87 Difference]: Start difference. First operand 28 states. Second operand has 27 states, 17 states have (on average 1.3529411764705883) internal successors, (23), 18 states have internal predecessors, (23), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-15 10:22:15,916 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 10:22:15,916 INFO L93 Difference]: Finished difference Result 28 states and 34 transitions. [2022-04-15 10:22:15,916 INFO L276 IsEmpty]: Start isEmpty. Operand 28 states and 34 transitions. [2022-04-15 10:22:15,916 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 10:22:15,916 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 10:22:15,917 INFO L74 IsIncluded]: Start isIncluded. First operand has 27 states, 17 states have (on average 1.3529411764705883) internal successors, (23), 18 states have internal predecessors, (23), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 28 states. [2022-04-15 10:22:15,917 INFO L87 Difference]: Start difference. First operand has 27 states, 17 states have (on average 1.3529411764705883) internal successors, (23), 18 states have internal predecessors, (23), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 28 states. [2022-04-15 10:22:15,919 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 10:22:15,919 INFO L93 Difference]: Finished difference Result 28 states and 34 transitions. [2022-04-15 10:22:15,919 INFO L276 IsEmpty]: Start isEmpty. Operand 28 states and 34 transitions. [2022-04-15 10:22:15,919 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 10:22:15,920 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 10:22:15,920 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 10:22:15,920 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 10:22:15,920 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 27 states, 17 states have (on average 1.3529411764705883) internal successors, (23), 18 states have internal predecessors, (23), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-15 10:22:15,921 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 27 states to 27 states and 33 transitions. [2022-04-15 10:22:15,922 INFO L78 Accepts]: Start accepts. Automaton has 27 states and 33 transitions. Word has length 17 [2022-04-15 10:22:15,922 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 10:22:15,923 INFO L478 AbstractCegarLoop]: Abstraction has 27 states and 33 transitions. [2022-04-15 10:22:15,923 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 3 states, 3 states have (on average 3.6666666666666665) internal successors, (11), 2 states have internal predecessors, (11), 2 states have call successors, (4), 3 states have call predecessors, (4), 2 states have return successors, (2), 2 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-15 10:22:15,923 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 27 states and 33 transitions. [2022-04-15 10:22:15,950 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 33 edges. 33 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 10:22:15,950 INFO L276 IsEmpty]: Start isEmpty. Operand 27 states and 33 transitions. [2022-04-15 10:22:15,951 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 19 [2022-04-15 10:22:15,951 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 10:22:15,951 INFO L499 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 10:22:15,951 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable0 [2022-04-15 10:22:15,951 INFO L403 AbstractCegarLoop]: === Iteration 2 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 10:22:15,953 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 10:22:15,953 INFO L85 PathProgramCache]: Analyzing trace with hash 444281082, now seen corresponding path program 1 times [2022-04-15 10:22:15,953 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 10:22:15,953 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1192943295] [2022-04-15 10:22:15,955 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 10:22:15,955 INFO L85 PathProgramCache]: Analyzing trace with hash 444281082, now seen corresponding path program 2 times [2022-04-15 10:22:15,955 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 10:22:15,955 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1810513317] [2022-04-15 10:22:15,955 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 10:22:15,956 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 10:22:15,970 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 10:22:15,970 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1584626712] [2022-04-15 10:22:15,970 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 10:22:15,970 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 10:22:15,970 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 10:22:15,972 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-04-15 10:22:15,995 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-04-15 10:22:16,068 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2022-04-15 10:22:16,069 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 10:22:16,070 INFO L263 TraceCheckSpWp]: Trace formula consists of 86 conjuncts, 5 conjunts are in the unsatisfiable core [2022-04-15 10:22:16,086 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 10:22:16,089 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 10:22:16,306 INFO L272 TraceCheckUtils]: 0: Hoare triple {269#true} call ULTIMATE.init(); {269#true} is VALID [2022-04-15 10:22:16,307 INFO L290 TraceCheckUtils]: 1: Hoare triple {269#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; {277#(<= ~counter~0 0)} is VALID [2022-04-15 10:22:16,307 INFO L290 TraceCheckUtils]: 2: Hoare triple {277#(<= ~counter~0 0)} assume true; {277#(<= ~counter~0 0)} is VALID [2022-04-15 10:22:16,308 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {277#(<= ~counter~0 0)} {269#true} #77#return; {277#(<= ~counter~0 0)} is VALID [2022-04-15 10:22:16,308 INFO L272 TraceCheckUtils]: 4: Hoare triple {277#(<= ~counter~0 0)} call #t~ret7 := main(); {277#(<= ~counter~0 0)} is VALID [2022-04-15 10:22:16,309 INFO L290 TraceCheckUtils]: 5: Hoare triple {277#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {277#(<= ~counter~0 0)} is VALID [2022-04-15 10:22:16,309 INFO L272 TraceCheckUtils]: 6: Hoare triple {277#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {277#(<= ~counter~0 0)} is VALID [2022-04-15 10:22:16,310 INFO L290 TraceCheckUtils]: 7: Hoare triple {277#(<= ~counter~0 0)} ~cond := #in~cond; {277#(<= ~counter~0 0)} is VALID [2022-04-15 10:22:16,310 INFO L290 TraceCheckUtils]: 8: Hoare triple {277#(<= ~counter~0 0)} assume !(0 == ~cond); {277#(<= ~counter~0 0)} is VALID [2022-04-15 10:22:16,310 INFO L290 TraceCheckUtils]: 9: Hoare triple {277#(<= ~counter~0 0)} assume true; {277#(<= ~counter~0 0)} is VALID [2022-04-15 10:22:16,311 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {277#(<= ~counter~0 0)} {277#(<= ~counter~0 0)} #69#return; {277#(<= ~counter~0 0)} is VALID [2022-04-15 10:22:16,311 INFO L290 TraceCheckUtils]: 11: Hoare triple {277#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0; {277#(<= ~counter~0 0)} is VALID [2022-04-15 10:22:16,312 INFO L290 TraceCheckUtils]: 12: Hoare triple {277#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {311#(<= |main_#t~post6| 0)} is VALID [2022-04-15 10:22:16,312 INFO L290 TraceCheckUtils]: 13: Hoare triple {311#(<= |main_#t~post6| 0)} assume !(#t~post6 < 20);havoc #t~post6; {270#false} is VALID [2022-04-15 10:22:16,313 INFO L272 TraceCheckUtils]: 14: Hoare triple {270#false} call __VERIFIER_assert((if ~q~0 == ~x~0 * ~y~0 then 1 else 0)); {270#false} is VALID [2022-04-15 10:22:16,313 INFO L290 TraceCheckUtils]: 15: Hoare triple {270#false} ~cond := #in~cond; {270#false} is VALID [2022-04-15 10:22:16,313 INFO L290 TraceCheckUtils]: 16: Hoare triple {270#false} assume 0 == ~cond; {270#false} is VALID [2022-04-15 10:22:16,313 INFO L290 TraceCheckUtils]: 17: Hoare triple {270#false} assume !false; {270#false} is VALID [2022-04-15 10:22:16,314 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-15 10:22:16,314 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-15 10:22:16,315 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 10:22:16,315 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1810513317] [2022-04-15 10:22:16,315 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 10:22:16,315 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1584626712] [2022-04-15 10:22:16,316 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1584626712] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 10:22:16,318 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 10:22:16,318 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-04-15 10:22:16,318 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 10:22:16,318 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1192943295] [2022-04-15 10:22:16,319 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1192943295] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 10:22:16,319 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 10:22:16,319 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [4] imperfect sequences [] total 4 [2022-04-15 10:22:16,319 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [503773143] [2022-04-15 10:22:16,319 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 10:22:16,320 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 18 [2022-04-15 10:22:16,320 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 10:22:16,320 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-15 10:22:16,333 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 18 edges. 18 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 10:22:16,334 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 4 states [2022-04-15 10:22:16,334 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 10:22:16,335 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 4 interpolants. [2022-04-15 10:22:16,335 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=5, Invalid=7, Unknown=0, NotChecked=0, Total=12 [2022-04-15 10:22:16,335 INFO L87 Difference]: Start difference. First operand 27 states and 33 transitions. Second operand has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-15 10:22:16,412 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 10:22:16,413 INFO L93 Difference]: Finished difference Result 37 states and 44 transitions. [2022-04-15 10:22:16,413 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 4 states. [2022-04-15 10:22:16,413 INFO L78 Accepts]: Start accepts. Automaton has has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) Word has length 18 [2022-04-15 10:22:16,413 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 10:22:16,413 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-15 10:22:16,417 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 44 transitions. [2022-04-15 10:22:16,417 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-15 10:22:16,419 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 4 states to 4 states and 44 transitions. [2022-04-15 10:22:16,419 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 4 states and 44 transitions. [2022-04-15 10:22:16,451 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 44 edges. 44 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 10:22:16,453 INFO L225 Difference]: With dead ends: 37 [2022-04-15 10:22:16,453 INFO L226 Difference]: Without dead ends: 29 [2022-04-15 10:22:16,454 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 17 GetRequests, 15 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-04-15 10:22:16,457 INFO L913 BasicCegarLoop]: 31 mSDtfsCounter, 0 mSDsluCounter, 50 mSDsCounter, 0 mSdLazyCounter, 7 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 0 SdHoareTripleChecker+Valid, 81 SdHoareTripleChecker+Invalid, 7 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 7 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-15 10:22:16,460 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [0 Valid, 81 Invalid, 7 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 7 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-15 10:22:16,462 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 29 states. [2022-04-15 10:22:16,479 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 29 to 29. [2022-04-15 10:22:16,479 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 10:22:16,480 INFO L82 GeneralOperation]: Start isEquivalent. First operand 29 states. Second operand has 29 states, 19 states have (on average 1.3157894736842106) internal successors, (25), 20 states have internal predecessors, (25), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-15 10:22:16,482 INFO L74 IsIncluded]: Start isIncluded. First operand 29 states. Second operand has 29 states, 19 states have (on average 1.3157894736842106) internal successors, (25), 20 states have internal predecessors, (25), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-15 10:22:16,482 INFO L87 Difference]: Start difference. First operand 29 states. Second operand has 29 states, 19 states have (on average 1.3157894736842106) internal successors, (25), 20 states have internal predecessors, (25), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-15 10:22:16,485 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 10:22:16,485 INFO L93 Difference]: Finished difference Result 29 states and 35 transitions. [2022-04-15 10:22:16,485 INFO L276 IsEmpty]: Start isEmpty. Operand 29 states and 35 transitions. [2022-04-15 10:22:16,486 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 10:22:16,486 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 10:22:16,488 INFO L74 IsIncluded]: Start isIncluded. First operand has 29 states, 19 states have (on average 1.3157894736842106) internal successors, (25), 20 states have internal predecessors, (25), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 29 states. [2022-04-15 10:22:16,488 INFO L87 Difference]: Start difference. First operand has 29 states, 19 states have (on average 1.3157894736842106) internal successors, (25), 20 states have internal predecessors, (25), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) Second operand 29 states. [2022-04-15 10:22:16,491 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 10:22:16,491 INFO L93 Difference]: Finished difference Result 29 states and 35 transitions. [2022-04-15 10:22:16,491 INFO L276 IsEmpty]: Start isEmpty. Operand 29 states and 35 transitions. [2022-04-15 10:22:16,491 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 10:22:16,491 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 10:22:16,491 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 10:22:16,492 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 10:22:16,492 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 29 states, 19 states have (on average 1.3157894736842106) internal successors, (25), 20 states have internal predecessors, (25), 6 states have call successors, (6), 4 states have call predecessors, (6), 3 states have return successors, (4), 4 states have call predecessors, (4), 4 states have call successors, (4) [2022-04-15 10:22:16,493 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 29 states to 29 states and 35 transitions. [2022-04-15 10:22:16,493 INFO L78 Accepts]: Start accepts. Automaton has 29 states and 35 transitions. Word has length 18 [2022-04-15 10:22:16,493 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 10:22:16,493 INFO L478 AbstractCegarLoop]: Abstraction has 29 states and 35 transitions. [2022-04-15 10:22:16,493 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 4 states, 4 states have (on average 3.0) internal successors, (12), 3 states have internal predecessors, (12), 3 states have call successors, (4), 3 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 2 states have call successors, (2) [2022-04-15 10:22:16,494 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 29 states and 35 transitions. [2022-04-15 10:22:16,524 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 35 edges. 35 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 10:22:16,526 INFO L276 IsEmpty]: Start isEmpty. Operand 29 states and 35 transitions. [2022-04-15 10:22:16,527 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 19 [2022-04-15 10:22:16,531 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 10:22:16,531 INFO L499 BasicCegarLoop]: trace histogram [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 10:22:16,550 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-04-15 10:22:16,750 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable1,2 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 10:22:16,751 INFO L403 AbstractCegarLoop]: === Iteration 3 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 10:22:16,751 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 10:22:16,751 INFO L85 PathProgramCache]: Analyzing trace with hash 446068542, now seen corresponding path program 1 times [2022-04-15 10:22:16,751 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 10:22:16,752 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [822221455] [2022-04-15 10:22:16,752 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 10:22:16,752 INFO L85 PathProgramCache]: Analyzing trace with hash 446068542, now seen corresponding path program 2 times [2022-04-15 10:22:16,752 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 10:22:16,752 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [2017637282] [2022-04-15 10:22:16,753 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 10:22:16,753 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 10:22:16,765 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 10:22:16,765 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1384611105] [2022-04-15 10:22:16,765 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 10:22:16,765 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 10:22:16,765 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 10:22:16,772 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-04-15 10:22:16,773 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-04-15 10:22:16,806 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 1 check-sat command(s) [2022-04-15 10:22:16,806 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 10:22:16,807 INFO L263 TraceCheckSpWp]: Trace formula consists of 86 conjuncts, 15 conjunts are in the unsatisfiable core [2022-04-15 10:22:16,814 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 10:22:16,815 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 10:22:16,926 INFO L272 TraceCheckUtils]: 0: Hoare triple {516#true} call ULTIMATE.init(); {516#true} is VALID [2022-04-15 10:22:16,927 INFO L290 TraceCheckUtils]: 1: Hoare triple {516#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; {516#true} is VALID [2022-04-15 10:22:16,927 INFO L290 TraceCheckUtils]: 2: Hoare triple {516#true} assume true; {516#true} is VALID [2022-04-15 10:22:16,927 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {516#true} {516#true} #77#return; {516#true} is VALID [2022-04-15 10:22:16,927 INFO L272 TraceCheckUtils]: 4: Hoare triple {516#true} call #t~ret7 := main(); {516#true} is VALID [2022-04-15 10:22:16,927 INFO L290 TraceCheckUtils]: 5: Hoare triple {516#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {516#true} is VALID [2022-04-15 10:22:16,927 INFO L272 TraceCheckUtils]: 6: Hoare triple {516#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {516#true} is VALID [2022-04-15 10:22:16,928 INFO L290 TraceCheckUtils]: 7: Hoare triple {516#true} ~cond := #in~cond; {516#true} is VALID [2022-04-15 10:22:16,928 INFO L290 TraceCheckUtils]: 8: Hoare triple {516#true} assume !(0 == ~cond); {516#true} is VALID [2022-04-15 10:22:16,928 INFO L290 TraceCheckUtils]: 9: Hoare triple {516#true} assume true; {516#true} is VALID [2022-04-15 10:22:16,928 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {516#true} {516#true} #69#return; {516#true} is VALID [2022-04-15 10:22:16,929 INFO L290 TraceCheckUtils]: 11: Hoare triple {516#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0; {554#(and (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 10:22:16,929 INFO L290 TraceCheckUtils]: 12: Hoare triple {554#(and (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {554#(and (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 10:22:16,930 INFO L290 TraceCheckUtils]: 13: Hoare triple {554#(and (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post6 < 20);havoc #t~post6; {554#(and (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 10:22:16,931 INFO L272 TraceCheckUtils]: 14: Hoare triple {554#(and (= main_~b~0 main_~y~0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {564#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 10:22:16,931 INFO L290 TraceCheckUtils]: 15: Hoare triple {564#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {568#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 10:22:16,931 INFO L290 TraceCheckUtils]: 16: Hoare triple {568#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {517#false} is VALID [2022-04-15 10:22:16,932 INFO L290 TraceCheckUtils]: 17: Hoare triple {517#false} assume !false; {517#false} is VALID [2022-04-15 10:22:16,932 INFO L134 CoverageAnalysis]: Checked inductivity of 0 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-15 10:22:16,932 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-15 10:22:16,932 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 10:22:16,940 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [2017637282] [2022-04-15 10:22:16,940 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 10:22:16,940 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1384611105] [2022-04-15 10:22:16,940 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1384611105] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 10:22:16,940 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 10:22:16,940 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-15 10:22:16,940 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 10:22:16,941 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [822221455] [2022-04-15 10:22:16,941 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [822221455] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 10:22:16,941 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 10:22:16,941 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-15 10:22:16,941 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1596826498] [2022-04-15 10:22:16,941 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 10:22:16,941 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) Word has length 18 [2022-04-15 10:22:16,942 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 10:22:16,942 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-15 10:22:16,970 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 18 edges. 18 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 10:22:16,970 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-15 10:22:16,970 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 10:22:16,970 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-15 10:22:16,971 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=7, Invalid=13, Unknown=0, NotChecked=0, Total=20 [2022-04-15 10:22:16,971 INFO L87 Difference]: Start difference. First operand 29 states and 35 transitions. Second operand has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-15 10:22:17,119 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 10:22:17,120 INFO L93 Difference]: Finished difference Result 42 states and 53 transitions. [2022-04-15 10:22:17,120 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 5 states. [2022-04-15 10:22:17,120 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) Word has length 18 [2022-04-15 10:22:17,120 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 10:22:17,120 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-15 10:22:17,121 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 53 transitions. [2022-04-15 10:22:17,122 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-15 10:22:17,124 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 5 states to 5 states and 53 transitions. [2022-04-15 10:22:17,124 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 5 states and 53 transitions. [2022-04-15 10:22:17,169 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 53 edges. 53 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 10:22:17,171 INFO L225 Difference]: With dead ends: 42 [2022-04-15 10:22:17,171 INFO L226 Difference]: Without dead ends: 40 [2022-04-15 10:22:17,171 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 18 GetRequests, 14 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-04-15 10:22:17,172 INFO L913 BasicCegarLoop]: 24 mSDtfsCounter, 9 mSDsluCounter, 59 mSDsCounter, 0 mSdLazyCounter, 54 mSolverCounterSat, 0 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 11 SdHoareTripleChecker+Valid, 83 SdHoareTripleChecker+Invalid, 54 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 0 IncrementalHoareTripleChecker+Valid, 54 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-15 10:22:17,172 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [11 Valid, 83 Invalid, 54 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [0 Valid, 54 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-15 10:22:17,173 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 40 states. [2022-04-15 10:22:17,185 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 40 to 34. [2022-04-15 10:22:17,185 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 10:22:17,185 INFO L82 GeneralOperation]: Start isEquivalent. First operand 40 states. Second operand has 34 states, 22 states have (on average 1.2727272727272727) internal successors, (28), 24 states have internal predecessors, (28), 7 states have call successors, (7), 5 states have call predecessors, (7), 4 states have return successors, (5), 4 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-15 10:22:17,185 INFO L74 IsIncluded]: Start isIncluded. First operand 40 states. Second operand has 34 states, 22 states have (on average 1.2727272727272727) internal successors, (28), 24 states have internal predecessors, (28), 7 states have call successors, (7), 5 states have call predecessors, (7), 4 states have return successors, (5), 4 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-15 10:22:17,186 INFO L87 Difference]: Start difference. First operand 40 states. Second operand has 34 states, 22 states have (on average 1.2727272727272727) internal successors, (28), 24 states have internal predecessors, (28), 7 states have call successors, (7), 5 states have call predecessors, (7), 4 states have return successors, (5), 4 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-15 10:22:17,187 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 10:22:17,187 INFO L93 Difference]: Finished difference Result 40 states and 51 transitions. [2022-04-15 10:22:17,187 INFO L276 IsEmpty]: Start isEmpty. Operand 40 states and 51 transitions. [2022-04-15 10:22:17,188 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 10:22:17,188 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 10:22:17,188 INFO L74 IsIncluded]: Start isIncluded. First operand has 34 states, 22 states have (on average 1.2727272727272727) internal successors, (28), 24 states have internal predecessors, (28), 7 states have call successors, (7), 5 states have call predecessors, (7), 4 states have return successors, (5), 4 states have call predecessors, (5), 5 states have call successors, (5) Second operand 40 states. [2022-04-15 10:22:17,188 INFO L87 Difference]: Start difference. First operand has 34 states, 22 states have (on average 1.2727272727272727) internal successors, (28), 24 states have internal predecessors, (28), 7 states have call successors, (7), 5 states have call predecessors, (7), 4 states have return successors, (5), 4 states have call predecessors, (5), 5 states have call successors, (5) Second operand 40 states. [2022-04-15 10:22:17,190 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 10:22:17,190 INFO L93 Difference]: Finished difference Result 40 states and 51 transitions. [2022-04-15 10:22:17,190 INFO L276 IsEmpty]: Start isEmpty. Operand 40 states and 51 transitions. [2022-04-15 10:22:17,190 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 10:22:17,190 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 10:22:17,190 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 10:22:17,190 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 10:22:17,191 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 34 states, 22 states have (on average 1.2727272727272727) internal successors, (28), 24 states have internal predecessors, (28), 7 states have call successors, (7), 5 states have call predecessors, (7), 4 states have return successors, (5), 4 states have call predecessors, (5), 5 states have call successors, (5) [2022-04-15 10:22:17,192 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 34 states to 34 states and 40 transitions. [2022-04-15 10:22:17,192 INFO L78 Accepts]: Start accepts. Automaton has 34 states and 40 transitions. Word has length 18 [2022-04-15 10:22:17,192 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 10:22:17,192 INFO L478 AbstractCegarLoop]: Abstraction has 34 states and 40 transitions. [2022-04-15 10:22:17,192 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 2.4) internal successors, (12), 4 states have internal predecessors, (12), 2 states have call successors, (4), 2 states have call predecessors, (4), 1 states have return successors, (2), 1 states have call predecessors, (2), 1 states have call successors, (2) [2022-04-15 10:22:17,192 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 34 states and 40 transitions. [2022-04-15 10:22:17,223 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 40 edges. 40 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 10:22:17,223 INFO L276 IsEmpty]: Start isEmpty. Operand 34 states and 40 transitions. [2022-04-15 10:22:17,223 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 25 [2022-04-15 10:22:17,223 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 10:22:17,224 INFO L499 BasicCegarLoop]: trace histogram [2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 10:22:17,240 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-04-15 10:22:17,440 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 3 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable2 [2022-04-15 10:22:17,440 INFO L403 AbstractCegarLoop]: === Iteration 4 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 10:22:17,441 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 10:22:17,441 INFO L85 PathProgramCache]: Analyzing trace with hash -1308579644, now seen corresponding path program 1 times [2022-04-15 10:22:17,441 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 10:22:17,441 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [680317182] [2022-04-15 10:22:17,441 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 10:22:17,442 INFO L85 PathProgramCache]: Analyzing trace with hash -1308579644, now seen corresponding path program 2 times [2022-04-15 10:22:17,442 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 10:22:17,442 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [16034248] [2022-04-15 10:22:17,442 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 10:22:17,442 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 10:22:17,458 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 10:22:17,458 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [1701788946] [2022-04-15 10:22:17,458 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 10:22:17,458 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 10:22:17,458 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 10:22:17,464 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-04-15 10:22:17,464 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-04-15 10:22:17,508 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-15 10:22:17,508 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 10:22:17,509 INFO L263 TraceCheckSpWp]: Trace formula consists of 96 conjuncts, 15 conjunts are in the unsatisfiable core [2022-04-15 10:22:17,519 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 10:22:17,520 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 10:22:27,928 INFO L272 TraceCheckUtils]: 0: Hoare triple {808#true} call ULTIMATE.init(); {808#true} is VALID [2022-04-15 10:22:27,928 INFO L290 TraceCheckUtils]: 1: Hoare triple {808#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; {808#true} is VALID [2022-04-15 10:22:27,928 INFO L290 TraceCheckUtils]: 2: Hoare triple {808#true} assume true; {808#true} is VALID [2022-04-15 10:22:27,928 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {808#true} {808#true} #77#return; {808#true} is VALID [2022-04-15 10:22:27,928 INFO L272 TraceCheckUtils]: 4: Hoare triple {808#true} call #t~ret7 := main(); {808#true} is VALID [2022-04-15 10:22:27,929 INFO L290 TraceCheckUtils]: 5: Hoare triple {808#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {808#true} is VALID [2022-04-15 10:22:27,929 INFO L272 TraceCheckUtils]: 6: Hoare triple {808#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {808#true} is VALID [2022-04-15 10:22:27,929 INFO L290 TraceCheckUtils]: 7: Hoare triple {808#true} ~cond := #in~cond; {834#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-15 10:22:27,929 INFO L290 TraceCheckUtils]: 8: Hoare triple {834#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {838#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-15 10:22:27,930 INFO L290 TraceCheckUtils]: 9: Hoare triple {838#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {838#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-15 10:22:27,930 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {838#(not (= |assume_abort_if_not_#in~cond| 0))} {808#true} #69#return; {845#(<= 1 main_~y~0)} is VALID [2022-04-15 10:22:27,931 INFO L290 TraceCheckUtils]: 11: Hoare triple {845#(<= 1 main_~y~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0; {849#(and (<= main_~y~0 main_~b~0) (<= 1 main_~y~0))} is VALID [2022-04-15 10:22:27,931 INFO L290 TraceCheckUtils]: 12: Hoare triple {849#(and (<= main_~y~0 main_~b~0) (<= 1 main_~y~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {849#(and (<= main_~y~0 main_~b~0) (<= 1 main_~y~0))} is VALID [2022-04-15 10:22:27,932 INFO L290 TraceCheckUtils]: 13: Hoare triple {849#(and (<= main_~y~0 main_~b~0) (<= 1 main_~y~0))} assume !!(#t~post6 < 20);havoc #t~post6; {849#(and (<= main_~y~0 main_~b~0) (<= 1 main_~y~0))} is VALID [2022-04-15 10:22:27,932 INFO L272 TraceCheckUtils]: 14: Hoare triple {849#(and (<= main_~y~0 main_~b~0) (<= 1 main_~y~0))} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {808#true} is VALID [2022-04-15 10:22:27,932 INFO L290 TraceCheckUtils]: 15: Hoare triple {808#true} ~cond := #in~cond; {862#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-15 10:22:27,932 INFO L290 TraceCheckUtils]: 16: Hoare triple {862#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {866#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 10:22:27,933 INFO L290 TraceCheckUtils]: 17: Hoare triple {866#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {866#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 10:22:29,942 WARN L284 TraceCheckUtils]: 18: Hoare quadruple {866#(not (= |__VERIFIER_assert_#in~cond| 0))} {849#(and (<= main_~y~0 main_~b~0) (<= 1 main_~y~0))} #71#return; {873#(and (or (and (= (mod (+ (* main_~y~0 main_~x~0) (* (- 1) main_~q~0)) (* main_~b~0 main_~a~0)) 0) (not (= main_~a~0 0))) (= (+ (* main_~y~0 main_~x~0) (* (- 1) main_~q~0)) 0)) (<= main_~y~0 main_~b~0) (<= 1 main_~y~0))} is UNKNOWN [2022-04-15 10:22:29,944 INFO L290 TraceCheckUtils]: 19: Hoare triple {873#(and (or (and (= (mod (+ (* main_~y~0 main_~x~0) (* (- 1) main_~q~0)) (* main_~b~0 main_~a~0)) 0) (not (= main_~a~0 0))) (= (+ (* main_~y~0 main_~x~0) (* (- 1) main_~q~0)) 0)) (<= main_~y~0 main_~b~0) (<= 1 main_~y~0))} assume !(0 != ~a~0 && 0 != ~b~0); {877#(and (= main_~q~0 (* main_~y~0 main_~x~0)) (<= 1 main_~y~0))} is VALID [2022-04-15 10:22:29,953 INFO L272 TraceCheckUtils]: 20: Hoare triple {877#(and (= main_~q~0 (* main_~y~0 main_~x~0)) (<= 1 main_~y~0))} call __VERIFIER_assert((if ~q~0 == ~x~0 * ~y~0 then 1 else 0)); {881#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 10:22:29,954 INFO L290 TraceCheckUtils]: 21: Hoare triple {881#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {885#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 10:22:29,954 INFO L290 TraceCheckUtils]: 22: Hoare triple {885#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {809#false} is VALID [2022-04-15 10:22:29,954 INFO L290 TraceCheckUtils]: 23: Hoare triple {809#false} assume !false; {809#false} is VALID [2022-04-15 10:22:29,955 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 1 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-15 10:22:29,955 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 10:23:10,193 INFO L290 TraceCheckUtils]: 23: Hoare triple {809#false} assume !false; {809#false} is VALID [2022-04-15 10:23:10,194 INFO L290 TraceCheckUtils]: 22: Hoare triple {885#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {809#false} is VALID [2022-04-15 10:23:10,194 INFO L290 TraceCheckUtils]: 21: Hoare triple {881#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {885#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 10:23:10,195 INFO L272 TraceCheckUtils]: 20: Hoare triple {901#(= main_~q~0 (* main_~y~0 main_~x~0))} call __VERIFIER_assert((if ~q~0 == ~x~0 * ~y~0 then 1 else 0)); {881#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 10:23:10,196 INFO L290 TraceCheckUtils]: 19: Hoare triple {905#(or (= main_~q~0 (* main_~y~0 main_~x~0)) (and (not (= main_~b~0 0)) (not (= main_~a~0 0))))} assume !(0 != ~a~0 && 0 != ~b~0); {901#(= main_~q~0 (* main_~y~0 main_~x~0))} is VALID [2022-04-15 10:23:10,197 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {866#(not (= |__VERIFIER_assert_#in~cond| 0))} {808#true} #71#return; {905#(or (= main_~q~0 (* main_~y~0 main_~x~0)) (and (not (= main_~b~0 0)) (not (= main_~a~0 0))))} is VALID [2022-04-15 10:23:10,198 INFO L290 TraceCheckUtils]: 17: Hoare triple {866#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {866#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 10:23:10,198 INFO L290 TraceCheckUtils]: 16: Hoare triple {918#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {866#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 10:23:10,199 INFO L290 TraceCheckUtils]: 15: Hoare triple {808#true} ~cond := #in~cond; {918#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-15 10:23:10,199 INFO L272 TraceCheckUtils]: 14: Hoare triple {808#true} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {808#true} is VALID [2022-04-15 10:23:10,199 INFO L290 TraceCheckUtils]: 13: Hoare triple {808#true} assume !!(#t~post6 < 20);havoc #t~post6; {808#true} is VALID [2022-04-15 10:23:10,199 INFO L290 TraceCheckUtils]: 12: Hoare triple {808#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {808#true} is VALID [2022-04-15 10:23:10,199 INFO L290 TraceCheckUtils]: 11: Hoare triple {808#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0; {808#true} is VALID [2022-04-15 10:23:10,199 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {808#true} {808#true} #69#return; {808#true} is VALID [2022-04-15 10:23:10,200 INFO L290 TraceCheckUtils]: 9: Hoare triple {808#true} assume true; {808#true} is VALID [2022-04-15 10:23:10,200 INFO L290 TraceCheckUtils]: 8: Hoare triple {808#true} assume !(0 == ~cond); {808#true} is VALID [2022-04-15 10:23:10,200 INFO L290 TraceCheckUtils]: 7: Hoare triple {808#true} ~cond := #in~cond; {808#true} is VALID [2022-04-15 10:23:10,200 INFO L272 TraceCheckUtils]: 6: Hoare triple {808#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {808#true} is VALID [2022-04-15 10:23:10,200 INFO L290 TraceCheckUtils]: 5: Hoare triple {808#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {808#true} is VALID [2022-04-15 10:23:10,200 INFO L272 TraceCheckUtils]: 4: Hoare triple {808#true} call #t~ret7 := main(); {808#true} is VALID [2022-04-15 10:23:10,200 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {808#true} {808#true} #77#return; {808#true} is VALID [2022-04-15 10:23:10,200 INFO L290 TraceCheckUtils]: 2: Hoare triple {808#true} assume true; {808#true} is VALID [2022-04-15 10:23:10,201 INFO L290 TraceCheckUtils]: 1: Hoare triple {808#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; {808#true} is VALID [2022-04-15 10:23:10,201 INFO L272 TraceCheckUtils]: 0: Hoare triple {808#true} call ULTIMATE.init(); {808#true} is VALID [2022-04-15 10:23:10,201 INFO L134 CoverageAnalysis]: Checked inductivity of 2 backedges. 1 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-15 10:23:10,201 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 10:23:10,201 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [16034248] [2022-04-15 10:23:10,201 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 10:23:10,201 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [1701788946] [2022-04-15 10:23:10,201 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [1701788946] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 10:23:10,201 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 10:23:10,202 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [12, 8] total 15 [2022-04-15 10:23:10,202 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 10:23:10,202 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [680317182] [2022-04-15 10:23:10,202 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [680317182] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 10:23:10,202 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 10:23:10,202 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [12] imperfect sequences [] total 12 [2022-04-15 10:23:10,202 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1128658229] [2022-04-15 10:23:10,202 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 10:23:10,203 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 11 states have (on average 1.4545454545454546) internal successors, (16), 9 states have internal predecessors, (16), 3 states have call successors, (5), 2 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) Word has length 24 [2022-04-15 10:23:10,203 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 10:23:10,203 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 12 states, 11 states have (on average 1.4545454545454546) internal successors, (16), 9 states have internal predecessors, (16), 3 states have call successors, (5), 2 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 10:23:12,222 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 24 edges. 23 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-15 10:23:12,222 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 12 states [2022-04-15 10:23:12,222 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 10:23:12,222 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2022-04-15 10:23:12,223 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=39, Invalid=171, Unknown=0, NotChecked=0, Total=210 [2022-04-15 10:23:12,223 INFO L87 Difference]: Start difference. First operand 34 states and 40 transitions. Second operand has 12 states, 11 states have (on average 1.4545454545454546) internal successors, (16), 9 states have internal predecessors, (16), 3 states have call successors, (5), 2 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 10:23:14,607 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 10:23:14,607 INFO L93 Difference]: Finished difference Result 50 states and 63 transitions. [2022-04-15 10:23:14,607 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 13 states. [2022-04-15 10:23:14,607 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 11 states have (on average 1.4545454545454546) internal successors, (16), 9 states have internal predecessors, (16), 3 states have call successors, (5), 2 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) Word has length 24 [2022-04-15 10:23:14,607 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 10:23:14,607 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 11 states have (on average 1.4545454545454546) internal successors, (16), 9 states have internal predecessors, (16), 3 states have call successors, (5), 2 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 10:23:14,609 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 60 transitions. [2022-04-15 10:23:14,609 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 11 states have (on average 1.4545454545454546) internal successors, (16), 9 states have internal predecessors, (16), 3 states have call successors, (5), 2 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 10:23:14,616 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 13 states to 13 states and 60 transitions. [2022-04-15 10:23:14,617 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 13 states and 60 transitions. [2022-04-15 10:23:16,695 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 60 edges. 59 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-15 10:23:16,697 INFO L225 Difference]: With dead ends: 50 [2022-04-15 10:23:16,697 INFO L226 Difference]: Without dead ends: 48 [2022-04-15 10:23:16,697 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 51 GetRequests, 33 SyntacticMatches, 1 SemanticMatches, 17 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 45 ImplicationChecksByTransitivity, 0.2s TimeCoverageRelationStatistics Valid=64, Invalid=278, Unknown=0, NotChecked=0, Total=342 [2022-04-15 10:23:16,698 INFO L913 BasicCegarLoop]: 20 mSDtfsCounter, 36 mSDsluCounter, 110 mSDsCounter, 0 mSdLazyCounter, 204 mSolverCounterSat, 17 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 1.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 39 SdHoareTripleChecker+Valid, 130 SdHoareTripleChecker+Invalid, 221 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 17 IncrementalHoareTripleChecker+Valid, 204 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 1.0s IncrementalHoareTripleChecker+Time [2022-04-15 10:23:16,698 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [39 Valid, 130 Invalid, 221 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [17 Valid, 204 Invalid, 0 Unknown, 0 Unchecked, 1.0s Time] [2022-04-15 10:23:16,698 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 48 states. [2022-04-15 10:23:16,751 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 48 to 45. [2022-04-15 10:23:16,752 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 10:23:16,752 INFO L82 GeneralOperation]: Start isEquivalent. First operand 48 states. Second operand has 45 states, 30 states have (on average 1.3333333333333333) internal successors, (40), 33 states have internal predecessors, (40), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (7), 5 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-15 10:23:16,753 INFO L74 IsIncluded]: Start isIncluded. First operand 48 states. Second operand has 45 states, 30 states have (on average 1.3333333333333333) internal successors, (40), 33 states have internal predecessors, (40), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (7), 5 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-15 10:23:16,753 INFO L87 Difference]: Start difference. First operand 48 states. Second operand has 45 states, 30 states have (on average 1.3333333333333333) internal successors, (40), 33 states have internal predecessors, (40), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (7), 5 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-15 10:23:16,758 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 10:23:16,758 INFO L93 Difference]: Finished difference Result 48 states and 61 transitions. [2022-04-15 10:23:16,758 INFO L276 IsEmpty]: Start isEmpty. Operand 48 states and 61 transitions. [2022-04-15 10:23:16,760 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 10:23:16,760 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 10:23:16,760 INFO L74 IsIncluded]: Start isIncluded. First operand has 45 states, 30 states have (on average 1.3333333333333333) internal successors, (40), 33 states have internal predecessors, (40), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (7), 5 states have call predecessors, (7), 7 states have call successors, (7) Second operand 48 states. [2022-04-15 10:23:16,760 INFO L87 Difference]: Start difference. First operand has 45 states, 30 states have (on average 1.3333333333333333) internal successors, (40), 33 states have internal predecessors, (40), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (7), 5 states have call predecessors, (7), 7 states have call successors, (7) Second operand 48 states. [2022-04-15 10:23:16,766 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 10:23:16,766 INFO L93 Difference]: Finished difference Result 48 states and 61 transitions. [2022-04-15 10:23:16,766 INFO L276 IsEmpty]: Start isEmpty. Operand 48 states and 61 transitions. [2022-04-15 10:23:16,766 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 10:23:16,766 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 10:23:16,766 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 10:23:16,766 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 10:23:16,766 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 45 states, 30 states have (on average 1.3333333333333333) internal successors, (40), 33 states have internal predecessors, (40), 9 states have call successors, (9), 6 states have call predecessors, (9), 5 states have return successors, (7), 5 states have call predecessors, (7), 7 states have call successors, (7) [2022-04-15 10:23:16,768 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 45 states to 45 states and 56 transitions. [2022-04-15 10:23:16,768 INFO L78 Accepts]: Start accepts. Automaton has 45 states and 56 transitions. Word has length 24 [2022-04-15 10:23:16,768 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 10:23:16,768 INFO L478 AbstractCegarLoop]: Abstraction has 45 states and 56 transitions. [2022-04-15 10:23:16,768 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 12 states, 11 states have (on average 1.4545454545454546) internal successors, (16), 9 states have internal predecessors, (16), 3 states have call successors, (5), 2 states have call predecessors, (5), 3 states have return successors, (3), 3 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 10:23:16,768 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 45 states and 56 transitions. [2022-04-15 10:23:18,824 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 56 edges. 55 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-15 10:23:18,824 INFO L276 IsEmpty]: Start isEmpty. Operand 45 states and 56 transitions. [2022-04-15 10:23:18,825 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 28 [2022-04-15 10:23:18,825 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 10:23:18,825 INFO L499 BasicCegarLoop]: trace histogram [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] [2022-04-15 10:23:18,843 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (4)] Ended with exit code 0 [2022-04-15 10:23:19,035 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable3,4 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 10:23:19,036 INFO L403 AbstractCegarLoop]: === Iteration 5 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 10:23:19,036 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 10:23:19,036 INFO L85 PathProgramCache]: Analyzing trace with hash 1797927234, now seen corresponding path program 1 times [2022-04-15 10:23:19,036 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 10:23:19,036 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [509348244] [2022-04-15 10:23:25,154 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 4 AssignedVariables, -1 ReadonlyVariables, Eigenvalues: {}, 0 SequentialAcceleration, 0 AlternatingAcceleration, 0 QuantifierFreeResult [2022-04-15 10:23:25,154 WARN L91 AcceleratorJordan]: Jordan acceleration failed, because NONLINEAR_UPDATE [2022-04-15 10:23:25,154 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-15 10:23:25,155 INFO L85 PathProgramCache]: Analyzing trace with hash 1797927234, now seen corresponding path program 2 times [2022-04-15 10:23:25,155 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 10:23:25,155 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [974798185] [2022-04-15 10:23:25,155 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 10:23:25,155 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 10:23:25,168 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 10:23:25,168 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [565814552] [2022-04-15 10:23:25,168 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 10:23:25,168 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 10:23:25,168 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 10:23:25,169 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-04-15 10:23:25,170 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-04-15 10:23:25,205 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-15 10:23:25,205 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 10:23:25,206 INFO L263 TraceCheckSpWp]: Trace formula consists of 112 conjuncts, 7 conjunts are in the unsatisfiable core [2022-04-15 10:23:25,216 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 10:23:25,218 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 10:23:25,343 INFO L272 TraceCheckUtils]: 0: Hoare triple {1260#true} call ULTIMATE.init(); {1260#true} is VALID [2022-04-15 10:23:25,344 INFO L290 TraceCheckUtils]: 1: Hoare triple {1260#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; {1268#(<= ~counter~0 0)} is VALID [2022-04-15 10:23:25,344 INFO L290 TraceCheckUtils]: 2: Hoare triple {1268#(<= ~counter~0 0)} assume true; {1268#(<= ~counter~0 0)} is VALID [2022-04-15 10:23:25,344 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1268#(<= ~counter~0 0)} {1260#true} #77#return; {1268#(<= ~counter~0 0)} is VALID [2022-04-15 10:23:25,345 INFO L272 TraceCheckUtils]: 4: Hoare triple {1268#(<= ~counter~0 0)} call #t~ret7 := main(); {1268#(<= ~counter~0 0)} is VALID [2022-04-15 10:23:25,345 INFO L290 TraceCheckUtils]: 5: Hoare triple {1268#(<= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {1268#(<= ~counter~0 0)} is VALID [2022-04-15 10:23:25,346 INFO L272 TraceCheckUtils]: 6: Hoare triple {1268#(<= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {1268#(<= ~counter~0 0)} is VALID [2022-04-15 10:23:25,347 INFO L290 TraceCheckUtils]: 7: Hoare triple {1268#(<= ~counter~0 0)} ~cond := #in~cond; {1268#(<= ~counter~0 0)} is VALID [2022-04-15 10:23:25,347 INFO L290 TraceCheckUtils]: 8: Hoare triple {1268#(<= ~counter~0 0)} assume !(0 == ~cond); {1268#(<= ~counter~0 0)} is VALID [2022-04-15 10:23:25,348 INFO L290 TraceCheckUtils]: 9: Hoare triple {1268#(<= ~counter~0 0)} assume true; {1268#(<= ~counter~0 0)} is VALID [2022-04-15 10:23:25,349 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1268#(<= ~counter~0 0)} {1268#(<= ~counter~0 0)} #69#return; {1268#(<= ~counter~0 0)} is VALID [2022-04-15 10:23:25,355 INFO L290 TraceCheckUtils]: 11: Hoare triple {1268#(<= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0; {1268#(<= ~counter~0 0)} is VALID [2022-04-15 10:23:25,356 INFO L290 TraceCheckUtils]: 12: Hoare triple {1268#(<= ~counter~0 0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1302#(<= ~counter~0 1)} is VALID [2022-04-15 10:23:25,356 INFO L290 TraceCheckUtils]: 13: Hoare triple {1302#(<= ~counter~0 1)} assume !!(#t~post6 < 20);havoc #t~post6; {1302#(<= ~counter~0 1)} is VALID [2022-04-15 10:23:25,357 INFO L272 TraceCheckUtils]: 14: Hoare triple {1302#(<= ~counter~0 1)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {1302#(<= ~counter~0 1)} is VALID [2022-04-15 10:23:25,357 INFO L290 TraceCheckUtils]: 15: Hoare triple {1302#(<= ~counter~0 1)} ~cond := #in~cond; {1302#(<= ~counter~0 1)} is VALID [2022-04-15 10:23:25,358 INFO L290 TraceCheckUtils]: 16: Hoare triple {1302#(<= ~counter~0 1)} assume !(0 == ~cond); {1302#(<= ~counter~0 1)} is VALID [2022-04-15 10:23:25,358 INFO L290 TraceCheckUtils]: 17: Hoare triple {1302#(<= ~counter~0 1)} assume true; {1302#(<= ~counter~0 1)} is VALID [2022-04-15 10:23:25,359 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {1302#(<= ~counter~0 1)} {1302#(<= ~counter~0 1)} #71#return; {1302#(<= ~counter~0 1)} is VALID [2022-04-15 10:23:25,359 INFO L290 TraceCheckUtils]: 19: Hoare triple {1302#(<= ~counter~0 1)} assume !!(0 != ~a~0 && 0 != ~b~0); {1302#(<= ~counter~0 1)} is VALID [2022-04-15 10:23:25,359 INFO L290 TraceCheckUtils]: 20: Hoare triple {1302#(<= ~counter~0 1)} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {1302#(<= ~counter~0 1)} is VALID [2022-04-15 10:23:25,360 INFO L290 TraceCheckUtils]: 21: Hoare triple {1302#(<= ~counter~0 1)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1330#(<= |main_#t~post6| 1)} is VALID [2022-04-15 10:23:25,360 INFO L290 TraceCheckUtils]: 22: Hoare triple {1330#(<= |main_#t~post6| 1)} assume !(#t~post6 < 20);havoc #t~post6; {1261#false} is VALID [2022-04-15 10:23:25,360 INFO L272 TraceCheckUtils]: 23: Hoare triple {1261#false} call __VERIFIER_assert((if ~q~0 == ~x~0 * ~y~0 then 1 else 0)); {1261#false} is VALID [2022-04-15 10:23:25,361 INFO L290 TraceCheckUtils]: 24: Hoare triple {1261#false} ~cond := #in~cond; {1261#false} is VALID [2022-04-15 10:23:25,361 INFO L290 TraceCheckUtils]: 25: Hoare triple {1261#false} assume 0 == ~cond; {1261#false} is VALID [2022-04-15 10:23:25,361 INFO L290 TraceCheckUtils]: 26: Hoare triple {1261#false} assume !false; {1261#false} is VALID [2022-04-15 10:23:25,361 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 2 proven. 2 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-15 10:23:25,361 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 10:23:25,512 INFO L290 TraceCheckUtils]: 26: Hoare triple {1261#false} assume !false; {1261#false} is VALID [2022-04-15 10:23:25,512 INFO L290 TraceCheckUtils]: 25: Hoare triple {1261#false} assume 0 == ~cond; {1261#false} is VALID [2022-04-15 10:23:25,512 INFO L290 TraceCheckUtils]: 24: Hoare triple {1261#false} ~cond := #in~cond; {1261#false} is VALID [2022-04-15 10:23:25,512 INFO L272 TraceCheckUtils]: 23: Hoare triple {1261#false} call __VERIFIER_assert((if ~q~0 == ~x~0 * ~y~0 then 1 else 0)); {1261#false} is VALID [2022-04-15 10:23:25,513 INFO L290 TraceCheckUtils]: 22: Hoare triple {1358#(< |main_#t~post6| 20)} assume !(#t~post6 < 20);havoc #t~post6; {1261#false} is VALID [2022-04-15 10:23:25,513 INFO L290 TraceCheckUtils]: 21: Hoare triple {1362#(< ~counter~0 20)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1358#(< |main_#t~post6| 20)} is VALID [2022-04-15 10:23:25,514 INFO L290 TraceCheckUtils]: 20: Hoare triple {1362#(< ~counter~0 20)} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {1362#(< ~counter~0 20)} is VALID [2022-04-15 10:23:25,514 INFO L290 TraceCheckUtils]: 19: Hoare triple {1362#(< ~counter~0 20)} assume !!(0 != ~a~0 && 0 != ~b~0); {1362#(< ~counter~0 20)} is VALID [2022-04-15 10:23:25,515 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {1260#true} {1362#(< ~counter~0 20)} #71#return; {1362#(< ~counter~0 20)} is VALID [2022-04-15 10:23:25,515 INFO L290 TraceCheckUtils]: 17: Hoare triple {1260#true} assume true; {1260#true} is VALID [2022-04-15 10:23:25,515 INFO L290 TraceCheckUtils]: 16: Hoare triple {1260#true} assume !(0 == ~cond); {1260#true} is VALID [2022-04-15 10:23:25,515 INFO L290 TraceCheckUtils]: 15: Hoare triple {1260#true} ~cond := #in~cond; {1260#true} is VALID [2022-04-15 10:23:25,515 INFO L272 TraceCheckUtils]: 14: Hoare triple {1362#(< ~counter~0 20)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {1260#true} is VALID [2022-04-15 10:23:25,515 INFO L290 TraceCheckUtils]: 13: Hoare triple {1362#(< ~counter~0 20)} assume !!(#t~post6 < 20);havoc #t~post6; {1362#(< ~counter~0 20)} is VALID [2022-04-15 10:23:25,516 INFO L290 TraceCheckUtils]: 12: Hoare triple {1390#(< ~counter~0 19)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1362#(< ~counter~0 20)} is VALID [2022-04-15 10:23:25,516 INFO L290 TraceCheckUtils]: 11: Hoare triple {1390#(< ~counter~0 19)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0; {1390#(< ~counter~0 19)} is VALID [2022-04-15 10:23:25,517 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1260#true} {1390#(< ~counter~0 19)} #69#return; {1390#(< ~counter~0 19)} is VALID [2022-04-15 10:23:25,517 INFO L290 TraceCheckUtils]: 9: Hoare triple {1260#true} assume true; {1260#true} is VALID [2022-04-15 10:23:25,517 INFO L290 TraceCheckUtils]: 8: Hoare triple {1260#true} assume !(0 == ~cond); {1260#true} is VALID [2022-04-15 10:23:25,517 INFO L290 TraceCheckUtils]: 7: Hoare triple {1260#true} ~cond := #in~cond; {1260#true} is VALID [2022-04-15 10:23:25,517 INFO L272 TraceCheckUtils]: 6: Hoare triple {1390#(< ~counter~0 19)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {1260#true} is VALID [2022-04-15 10:23:25,517 INFO L290 TraceCheckUtils]: 5: Hoare triple {1390#(< ~counter~0 19)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {1390#(< ~counter~0 19)} is VALID [2022-04-15 10:23:25,526 INFO L272 TraceCheckUtils]: 4: Hoare triple {1390#(< ~counter~0 19)} call #t~ret7 := main(); {1390#(< ~counter~0 19)} is VALID [2022-04-15 10:23:25,527 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1390#(< ~counter~0 19)} {1260#true} #77#return; {1390#(< ~counter~0 19)} is VALID [2022-04-15 10:23:25,527 INFO L290 TraceCheckUtils]: 2: Hoare triple {1390#(< ~counter~0 19)} assume true; {1390#(< ~counter~0 19)} is VALID [2022-04-15 10:23:25,527 INFO L290 TraceCheckUtils]: 1: Hoare triple {1260#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; {1390#(< ~counter~0 19)} is VALID [2022-04-15 10:23:25,527 INFO L272 TraceCheckUtils]: 0: Hoare triple {1260#true} call ULTIMATE.init(); {1260#true} is VALID [2022-04-15 10:23:25,528 INFO L134 CoverageAnalysis]: Checked inductivity of 4 backedges. 2 proven. 2 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-15 10:23:25,528 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 10:23:25,528 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [974798185] [2022-04-15 10:23:25,528 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 10:23:25,528 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [565814552] [2022-04-15 10:23:25,528 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [565814552] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 10:23:25,528 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 10:23:25,528 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [5, 5] total 8 [2022-04-15 10:23:25,528 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 10:23:25,528 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [509348244] [2022-04-15 10:23:25,529 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [509348244] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 10:23:25,529 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 10:23:25,529 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [] total 5 [2022-04-15 10:23:25,529 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1409460245] [2022-04-15 10:23:25,529 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 10:23:25,529 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 4 states have call successors, (5), 4 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) Word has length 27 [2022-04-15 10:23:25,529 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 10:23:25,529 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 4 states have call successors, (5), 4 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-15 10:23:25,546 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 27 edges. 27 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 10:23:25,546 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 5 states [2022-04-15 10:23:25,546 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 10:23:25,546 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 5 interpolants. [2022-04-15 10:23:25,546 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=20, Invalid=36, Unknown=0, NotChecked=0, Total=56 [2022-04-15 10:23:25,547 INFO L87 Difference]: Start difference. First operand 45 states and 56 transitions. Second operand has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 4 states have call successors, (5), 4 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-15 10:23:25,692 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 10:23:25,692 INFO L93 Difference]: Finished difference Result 73 states and 89 transitions. [2022-04-15 10:23:25,692 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 6 states. [2022-04-15 10:23:25,692 INFO L78 Accepts]: Start accepts. Automaton has has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 4 states have call successors, (5), 4 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) Word has length 27 [2022-04-15 10:23:25,692 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 10:23:25,693 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 4 states have call successors, (5), 4 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-15 10:23:25,694 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 64 transitions. [2022-04-15 10:23:25,694 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 4 states have call successors, (5), 4 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-15 10:23:25,695 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 6 states to 6 states and 64 transitions. [2022-04-15 10:23:25,695 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 6 states and 64 transitions. [2022-04-15 10:23:25,744 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 64 edges. 64 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 10:23:25,756 INFO L225 Difference]: With dead ends: 73 [2022-04-15 10:23:25,756 INFO L226 Difference]: Without dead ends: 63 [2022-04-15 10:23:25,756 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 54 GetRequests, 47 SyntacticMatches, 0 SemanticMatches, 7 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 4 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=27, Invalid=45, Unknown=0, NotChecked=0, Total=72 [2022-04-15 10:23:25,757 INFO L913 BasicCegarLoop]: 35 mSDtfsCounter, 17 mSDsluCounter, 73 mSDsCounter, 0 mSdLazyCounter, 14 mSolverCounterSat, 5 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.0s Time, 0 mProtectedPredicate, 0 mProtectedAction, 17 SdHoareTripleChecker+Valid, 108 SdHoareTripleChecker+Invalid, 19 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 5 IncrementalHoareTripleChecker+Valid, 14 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.0s IncrementalHoareTripleChecker+Time [2022-04-15 10:23:25,757 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [17 Valid, 108 Invalid, 19 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [5 Valid, 14 Invalid, 0 Unknown, 0 Unchecked, 0.0s Time] [2022-04-15 10:23:25,757 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 63 states. [2022-04-15 10:23:25,814 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 63 to 61. [2022-04-15 10:23:25,814 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 10:23:25,814 INFO L82 GeneralOperation]: Start isEquivalent. First operand 63 states. Second operand has 61 states, 43 states have (on average 1.3255813953488371) internal successors, (57), 45 states have internal predecessors, (57), 11 states have call successors, (11), 8 states have call predecessors, (11), 6 states have return successors, (8), 7 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-15 10:23:25,815 INFO L74 IsIncluded]: Start isIncluded. First operand 63 states. Second operand has 61 states, 43 states have (on average 1.3255813953488371) internal successors, (57), 45 states have internal predecessors, (57), 11 states have call successors, (11), 8 states have call predecessors, (11), 6 states have return successors, (8), 7 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-15 10:23:25,815 INFO L87 Difference]: Start difference. First operand 63 states. Second operand has 61 states, 43 states have (on average 1.3255813953488371) internal successors, (57), 45 states have internal predecessors, (57), 11 states have call successors, (11), 8 states have call predecessors, (11), 6 states have return successors, (8), 7 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-15 10:23:25,817 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 10:23:25,817 INFO L93 Difference]: Finished difference Result 63 states and 77 transitions. [2022-04-15 10:23:25,817 INFO L276 IsEmpty]: Start isEmpty. Operand 63 states and 77 transitions. [2022-04-15 10:23:25,817 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 10:23:25,817 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 10:23:25,818 INFO L74 IsIncluded]: Start isIncluded. First operand has 61 states, 43 states have (on average 1.3255813953488371) internal successors, (57), 45 states have internal predecessors, (57), 11 states have call successors, (11), 8 states have call predecessors, (11), 6 states have return successors, (8), 7 states have call predecessors, (8), 8 states have call successors, (8) Second operand 63 states. [2022-04-15 10:23:25,818 INFO L87 Difference]: Start difference. First operand has 61 states, 43 states have (on average 1.3255813953488371) internal successors, (57), 45 states have internal predecessors, (57), 11 states have call successors, (11), 8 states have call predecessors, (11), 6 states have return successors, (8), 7 states have call predecessors, (8), 8 states have call successors, (8) Second operand 63 states. [2022-04-15 10:23:25,819 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 10:23:25,819 INFO L93 Difference]: Finished difference Result 63 states and 77 transitions. [2022-04-15 10:23:25,820 INFO L276 IsEmpty]: Start isEmpty. Operand 63 states and 77 transitions. [2022-04-15 10:23:25,820 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 10:23:25,820 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 10:23:25,820 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 10:23:25,820 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 10:23:25,820 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 61 states, 43 states have (on average 1.3255813953488371) internal successors, (57), 45 states have internal predecessors, (57), 11 states have call successors, (11), 8 states have call predecessors, (11), 6 states have return successors, (8), 7 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-15 10:23:25,822 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 61 states to 61 states and 76 transitions. [2022-04-15 10:23:25,822 INFO L78 Accepts]: Start accepts. Automaton has 61 states and 76 transitions. Word has length 27 [2022-04-15 10:23:25,822 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 10:23:25,822 INFO L478 AbstractCegarLoop]: Abstraction has 61 states and 76 transitions. [2022-04-15 10:23:25,822 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 5 states, 5 states have (on average 3.8) internal successors, (19), 4 states have internal predecessors, (19), 4 states have call successors, (5), 4 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 3 states have call successors, (3) [2022-04-15 10:23:25,822 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 61 states and 76 transitions. [2022-04-15 10:23:27,888 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 76 edges. 75 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-15 10:23:27,888 INFO L276 IsEmpty]: Start isEmpty. Operand 61 states and 76 transitions. [2022-04-15 10:23:27,889 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 28 [2022-04-15 10:23:27,889 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 10:23:27,889 INFO L499 BasicCegarLoop]: trace histogram [2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 10:23:27,904 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (5)] Ended with exit code 0 [2022-04-15 10:23:28,095 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable4,5 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 10:23:28,096 INFO L403 AbstractCegarLoop]: === Iteration 6 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 10:23:28,096 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 10:23:28,096 INFO L85 PathProgramCache]: Analyzing trace with hash 1799714694, now seen corresponding path program 1 times [2022-04-15 10:23:28,096 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 10:23:28,096 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [257497460] [2022-04-15 10:23:34,190 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 4 AssignedVariables, -1 ReadonlyVariables, Eigenvalues: {}, 0 SequentialAcceleration, 0 AlternatingAcceleration, 0 QuantifierFreeResult [2022-04-15 10:23:34,190 WARN L91 AcceleratorJordan]: Jordan acceleration failed, because NONLINEAR_UPDATE [2022-04-15 10:23:34,190 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-15 10:23:34,190 INFO L85 PathProgramCache]: Analyzing trace with hash 1799714694, now seen corresponding path program 2 times [2022-04-15 10:23:34,190 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 10:23:34,190 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1157846878] [2022-04-15 10:23:34,190 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 10:23:34,191 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 10:23:34,200 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 10:23:34,201 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [931298497] [2022-04-15 10:23:34,201 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 10:23:34,201 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 10:23:34,201 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 10:23:34,202 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-04-15 10:23:34,203 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-04-15 10:23:34,253 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-15 10:23:34,253 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 10:23:34,254 INFO L263 TraceCheckSpWp]: Trace formula consists of 112 conjuncts, 28 conjunts are in the unsatisfiable core [2022-04-15 10:23:34,264 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 10:23:34,265 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 10:23:34,618 INFO L272 TraceCheckUtils]: 0: Hoare triple {1825#true} call ULTIMATE.init(); {1825#true} is VALID [2022-04-15 10:23:34,619 INFO L290 TraceCheckUtils]: 1: Hoare triple {1825#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; {1825#true} is VALID [2022-04-15 10:23:34,619 INFO L290 TraceCheckUtils]: 2: Hoare triple {1825#true} assume true; {1825#true} is VALID [2022-04-15 10:23:34,619 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1825#true} {1825#true} #77#return; {1825#true} is VALID [2022-04-15 10:23:34,619 INFO L272 TraceCheckUtils]: 4: Hoare triple {1825#true} call #t~ret7 := main(); {1825#true} is VALID [2022-04-15 10:23:34,619 INFO L290 TraceCheckUtils]: 5: Hoare triple {1825#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {1825#true} is VALID [2022-04-15 10:23:34,619 INFO L272 TraceCheckUtils]: 6: Hoare triple {1825#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {1825#true} is VALID [2022-04-15 10:23:34,619 INFO L290 TraceCheckUtils]: 7: Hoare triple {1825#true} ~cond := #in~cond; {1825#true} is VALID [2022-04-15 10:23:34,620 INFO L290 TraceCheckUtils]: 8: Hoare triple {1825#true} assume !(0 == ~cond); {1825#true} is VALID [2022-04-15 10:23:34,620 INFO L290 TraceCheckUtils]: 9: Hoare triple {1825#true} assume true; {1825#true} is VALID [2022-04-15 10:23:34,620 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1825#true} {1825#true} #69#return; {1825#true} is VALID [2022-04-15 10:23:34,620 INFO L290 TraceCheckUtils]: 11: Hoare triple {1825#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0; {1863#(and (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 10:23:34,621 INFO L290 TraceCheckUtils]: 12: Hoare triple {1863#(and (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1863#(and (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 10:23:34,622 INFO L290 TraceCheckUtils]: 13: Hoare triple {1863#(and (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(#t~post6 < 20);havoc #t~post6; {1863#(and (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 10:23:34,622 INFO L272 TraceCheckUtils]: 14: Hoare triple {1863#(and (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {1825#true} is VALID [2022-04-15 10:23:34,622 INFO L290 TraceCheckUtils]: 15: Hoare triple {1825#true} ~cond := #in~cond; {1876#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-15 10:23:34,622 INFO L290 TraceCheckUtils]: 16: Hoare triple {1876#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {1880#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 10:23:34,623 INFO L290 TraceCheckUtils]: 17: Hoare triple {1880#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {1880#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 10:23:34,623 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {1880#(not (= |__VERIFIER_assert_#in~cond| 0))} {1863#(and (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} #71#return; {1887#(and (= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0)) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 10:23:34,624 INFO L290 TraceCheckUtils]: 19: Hoare triple {1887#(and (= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0)) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume !!(0 != ~a~0 && 0 != ~b~0); {1887#(and (= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0)) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 10:23:34,625 INFO L290 TraceCheckUtils]: 20: Hoare triple {1887#(and (= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0)) (= main_~b~0 main_~y~0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {1894#(and (= (+ main_~q~0 (* main_~y~0 main_~x~0 1)) (* main_~y~0 main_~x~0)) (= (div main_~y~0 2) main_~b~0) (= (mod main_~y~0 2) 0) (= main_~p~0 4) (= (div main_~x~0 2) main_~a~0) (= (mod main_~x~0 2) 0))} is VALID [2022-04-15 10:23:34,626 INFO L290 TraceCheckUtils]: 21: Hoare triple {1894#(and (= (+ main_~q~0 (* main_~y~0 main_~x~0 1)) (* main_~y~0 main_~x~0)) (= (div main_~y~0 2) main_~b~0) (= (mod main_~y~0 2) 0) (= main_~p~0 4) (= (div main_~x~0 2) main_~a~0) (= (mod main_~x~0 2) 0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1894#(and (= (+ main_~q~0 (* main_~y~0 main_~x~0 1)) (* main_~y~0 main_~x~0)) (= (div main_~y~0 2) main_~b~0) (= (mod main_~y~0 2) 0) (= main_~p~0 4) (= (div main_~x~0 2) main_~a~0) (= (mod main_~x~0 2) 0))} is VALID [2022-04-15 10:23:34,626 INFO L290 TraceCheckUtils]: 22: Hoare triple {1894#(and (= (+ main_~q~0 (* main_~y~0 main_~x~0 1)) (* main_~y~0 main_~x~0)) (= (div main_~y~0 2) main_~b~0) (= (mod main_~y~0 2) 0) (= main_~p~0 4) (= (div main_~x~0 2) main_~a~0) (= (mod main_~x~0 2) 0))} assume !!(#t~post6 < 20);havoc #t~post6; {1894#(and (= (+ main_~q~0 (* main_~y~0 main_~x~0 1)) (* main_~y~0 main_~x~0)) (= (div main_~y~0 2) main_~b~0) (= (mod main_~y~0 2) 0) (= main_~p~0 4) (= (div main_~x~0 2) main_~a~0) (= (mod main_~x~0 2) 0))} is VALID [2022-04-15 10:23:34,632 INFO L272 TraceCheckUtils]: 23: Hoare triple {1894#(and (= (+ main_~q~0 (* main_~y~0 main_~x~0 1)) (* main_~y~0 main_~x~0)) (= (div main_~y~0 2) main_~b~0) (= (mod main_~y~0 2) 0) (= main_~p~0 4) (= (div main_~x~0 2) main_~a~0) (= (mod main_~x~0 2) 0))} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {1904#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 10:23:34,632 INFO L290 TraceCheckUtils]: 24: Hoare triple {1904#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1908#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 10:23:34,633 INFO L290 TraceCheckUtils]: 25: Hoare triple {1908#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1826#false} is VALID [2022-04-15 10:23:34,633 INFO L290 TraceCheckUtils]: 26: Hoare triple {1826#false} assume !false; {1826#false} is VALID [2022-04-15 10:23:34,633 INFO L134 CoverageAnalysis]: Checked inductivity of 5 backedges. 1 proven. 4 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-15 10:23:34,633 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 10:24:31,098 INFO L290 TraceCheckUtils]: 26: Hoare triple {1826#false} assume !false; {1826#false} is VALID [2022-04-15 10:24:31,099 INFO L290 TraceCheckUtils]: 25: Hoare triple {1908#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {1826#false} is VALID [2022-04-15 10:24:31,099 INFO L290 TraceCheckUtils]: 24: Hoare triple {1904#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {1908#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 10:24:31,100 INFO L272 TraceCheckUtils]: 23: Hoare triple {1924#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {1904#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 10:24:31,100 INFO L290 TraceCheckUtils]: 22: Hoare triple {1924#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} assume !!(#t~post6 < 20);havoc #t~post6; {1924#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} is VALID [2022-04-15 10:24:31,101 INFO L290 TraceCheckUtils]: 21: Hoare triple {1924#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1924#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} is VALID [2022-04-15 10:24:31,105 INFO L290 TraceCheckUtils]: 20: Hoare triple {1934#(or (not (= (mod main_~b~0 2) 0)) (= (+ (* (div main_~b~0 2) (* main_~p~0 4) (div main_~a~0 2)) main_~q~0) (* main_~y~0 main_~x~0)) (not (= (mod main_~a~0 2) 0)))} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {1924#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} is VALID [2022-04-15 10:24:31,105 INFO L290 TraceCheckUtils]: 19: Hoare triple {1934#(or (not (= (mod main_~b~0 2) 0)) (= (+ (* (div main_~b~0 2) (* main_~p~0 4) (div main_~a~0 2)) main_~q~0) (* main_~y~0 main_~x~0)) (not (= (mod main_~a~0 2) 0)))} assume !!(0 != ~a~0 && 0 != ~b~0); {1934#(or (not (= (mod main_~b~0 2) 0)) (= (+ (* (div main_~b~0 2) (* main_~p~0 4) (div main_~a~0 2)) main_~q~0) (* main_~y~0 main_~x~0)) (not (= (mod main_~a~0 2) 0)))} is VALID [2022-04-15 10:24:31,111 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {1880#(not (= |__VERIFIER_assert_#in~cond| 0))} {1825#true} #71#return; {1934#(or (not (= (mod main_~b~0 2) 0)) (= (+ (* (div main_~b~0 2) (* main_~p~0 4) (div main_~a~0 2)) main_~q~0) (* main_~y~0 main_~x~0)) (not (= (mod main_~a~0 2) 0)))} is VALID [2022-04-15 10:24:31,111 INFO L290 TraceCheckUtils]: 17: Hoare triple {1880#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {1880#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 10:24:31,115 INFO L290 TraceCheckUtils]: 16: Hoare triple {1950#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {1880#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 10:24:31,116 INFO L290 TraceCheckUtils]: 15: Hoare triple {1825#true} ~cond := #in~cond; {1950#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-15 10:24:31,116 INFO L272 TraceCheckUtils]: 14: Hoare triple {1825#true} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {1825#true} is VALID [2022-04-15 10:24:31,116 INFO L290 TraceCheckUtils]: 13: Hoare triple {1825#true} assume !!(#t~post6 < 20);havoc #t~post6; {1825#true} is VALID [2022-04-15 10:24:31,116 INFO L290 TraceCheckUtils]: 12: Hoare triple {1825#true} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {1825#true} is VALID [2022-04-15 10:24:31,116 INFO L290 TraceCheckUtils]: 11: Hoare triple {1825#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0; {1825#true} is VALID [2022-04-15 10:24:31,116 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {1825#true} {1825#true} #69#return; {1825#true} is VALID [2022-04-15 10:24:31,116 INFO L290 TraceCheckUtils]: 9: Hoare triple {1825#true} assume true; {1825#true} is VALID [2022-04-15 10:24:31,116 INFO L290 TraceCheckUtils]: 8: Hoare triple {1825#true} assume !(0 == ~cond); {1825#true} is VALID [2022-04-15 10:24:31,116 INFO L290 TraceCheckUtils]: 7: Hoare triple {1825#true} ~cond := #in~cond; {1825#true} is VALID [2022-04-15 10:24:31,117 INFO L272 TraceCheckUtils]: 6: Hoare triple {1825#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {1825#true} is VALID [2022-04-15 10:24:31,117 INFO L290 TraceCheckUtils]: 5: Hoare triple {1825#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {1825#true} is VALID [2022-04-15 10:24:31,117 INFO L272 TraceCheckUtils]: 4: Hoare triple {1825#true} call #t~ret7 := main(); {1825#true} is VALID [2022-04-15 10:24:31,117 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {1825#true} {1825#true} #77#return; {1825#true} is VALID [2022-04-15 10:24:31,117 INFO L290 TraceCheckUtils]: 2: Hoare triple {1825#true} assume true; {1825#true} is VALID [2022-04-15 10:24:31,117 INFO L290 TraceCheckUtils]: 1: Hoare triple {1825#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; {1825#true} is VALID [2022-04-15 10:24:31,117 INFO L272 TraceCheckUtils]: 0: Hoare triple {1825#true} call ULTIMATE.init(); {1825#true} is VALID [2022-04-15 10:24:31,117 INFO L134 CoverageAnalysis]: Checked inductivity of 5 backedges. 4 proven. 1 refuted. 0 times theorem prover too weak. 0 trivial. 0 not checked. [2022-04-15 10:24:31,118 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 10:24:31,118 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1157846878] [2022-04-15 10:24:31,118 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 10:24:31,118 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [931298497] [2022-04-15 10:24:31,118 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [931298497] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 10:24:31,118 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 10:24:31,118 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [9, 8] total 12 [2022-04-15 10:24:31,118 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 10:24:31,118 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [257497460] [2022-04-15 10:24:31,118 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [257497460] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 10:24:31,118 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 10:24:31,118 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-15 10:24:31,118 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1651447383] [2022-04-15 10:24:31,119 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 10:24:31,119 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 2.111111111111111) internal successors, (19), 8 states have internal predecessors, (19), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) Word has length 27 [2022-04-15 10:24:31,119 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 10:24:31,119 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 9 states, 9 states have (on average 2.111111111111111) internal successors, (19), 8 states have internal predecessors, (19), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 10:24:31,144 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 27 edges. 27 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 10:24:31,144 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-15 10:24:31,144 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 10:24:31,145 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-15 10:24:31,145 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=31, Invalid=101, Unknown=0, NotChecked=0, Total=132 [2022-04-15 10:24:31,145 INFO L87 Difference]: Start difference. First operand 61 states and 76 transitions. Second operand has 9 states, 9 states have (on average 2.111111111111111) internal successors, (19), 8 states have internal predecessors, (19), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 10:24:31,765 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 10:24:31,765 INFO L93 Difference]: Finished difference Result 76 states and 96 transitions. [2022-04-15 10:24:31,765 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 8 states. [2022-04-15 10:24:31,765 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 9 states have (on average 2.111111111111111) internal successors, (19), 8 states have internal predecessors, (19), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) Word has length 27 [2022-04-15 10:24:31,765 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 10:24:31,765 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 2.111111111111111) internal successors, (19), 8 states have internal predecessors, (19), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 10:24:31,767 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 68 transitions. [2022-04-15 10:24:31,768 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 9 states have (on average 2.111111111111111) internal successors, (19), 8 states have internal predecessors, (19), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 10:24:31,769 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 8 states to 8 states and 68 transitions. [2022-04-15 10:24:31,770 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 8 states and 68 transitions. [2022-04-15 10:24:31,821 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 68 edges. 68 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 10:24:31,824 INFO L225 Difference]: With dead ends: 76 [2022-04-15 10:24:31,824 INFO L226 Difference]: Without dead ends: 74 [2022-04-15 10:24:31,824 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 55 GetRequests, 42 SyntacticMatches, 1 SemanticMatches, 12 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 18 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=44, Invalid=138, Unknown=0, NotChecked=0, Total=182 [2022-04-15 10:24:31,826 INFO L913 BasicCegarLoop]: 25 mSDtfsCounter, 24 mSDsluCounter, 101 mSDsCounter, 0 mSdLazyCounter, 197 mSolverCounterSat, 5 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 27 SdHoareTripleChecker+Valid, 126 SdHoareTripleChecker+Invalid, 202 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 5 IncrementalHoareTripleChecker+Valid, 197 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-04-15 10:24:31,827 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [27 Valid, 126 Invalid, 202 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [5 Valid, 197 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2022-04-15 10:24:31,827 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 74 states. [2022-04-15 10:24:31,900 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 74 to 68. [2022-04-15 10:24:31,900 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 10:24:31,901 INFO L82 GeneralOperation]: Start isEquivalent. First operand 74 states. Second operand has 68 states, 48 states have (on average 1.2916666666666667) internal successors, (62), 51 states have internal predecessors, (62), 12 states have call successors, (12), 9 states have call predecessors, (12), 7 states have return successors, (9), 7 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-15 10:24:31,901 INFO L74 IsIncluded]: Start isIncluded. First operand 74 states. Second operand has 68 states, 48 states have (on average 1.2916666666666667) internal successors, (62), 51 states have internal predecessors, (62), 12 states have call successors, (12), 9 states have call predecessors, (12), 7 states have return successors, (9), 7 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-15 10:24:31,901 INFO L87 Difference]: Start difference. First operand 74 states. Second operand has 68 states, 48 states have (on average 1.2916666666666667) internal successors, (62), 51 states have internal predecessors, (62), 12 states have call successors, (12), 9 states have call predecessors, (12), 7 states have return successors, (9), 7 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-15 10:24:31,903 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 10:24:31,903 INFO L93 Difference]: Finished difference Result 74 states and 94 transitions. [2022-04-15 10:24:31,903 INFO L276 IsEmpty]: Start isEmpty. Operand 74 states and 94 transitions. [2022-04-15 10:24:31,903 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 10:24:31,903 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 10:24:31,903 INFO L74 IsIncluded]: Start isIncluded. First operand has 68 states, 48 states have (on average 1.2916666666666667) internal successors, (62), 51 states have internal predecessors, (62), 12 states have call successors, (12), 9 states have call predecessors, (12), 7 states have return successors, (9), 7 states have call predecessors, (9), 9 states have call successors, (9) Second operand 74 states. [2022-04-15 10:24:31,904 INFO L87 Difference]: Start difference. First operand has 68 states, 48 states have (on average 1.2916666666666667) internal successors, (62), 51 states have internal predecessors, (62), 12 states have call successors, (12), 9 states have call predecessors, (12), 7 states have return successors, (9), 7 states have call predecessors, (9), 9 states have call successors, (9) Second operand 74 states. [2022-04-15 10:24:31,905 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 10:24:31,905 INFO L93 Difference]: Finished difference Result 74 states and 94 transitions. [2022-04-15 10:24:31,905 INFO L276 IsEmpty]: Start isEmpty. Operand 74 states and 94 transitions. [2022-04-15 10:24:31,906 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 10:24:31,906 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 10:24:31,906 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 10:24:31,906 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 10:24:31,906 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 68 states, 48 states have (on average 1.2916666666666667) internal successors, (62), 51 states have internal predecessors, (62), 12 states have call successors, (12), 9 states have call predecessors, (12), 7 states have return successors, (9), 7 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-15 10:24:31,907 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 68 states to 68 states and 83 transitions. [2022-04-15 10:24:31,908 INFO L78 Accepts]: Start accepts. Automaton has 68 states and 83 transitions. Word has length 27 [2022-04-15 10:24:31,908 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 10:24:31,908 INFO L478 AbstractCegarLoop]: Abstraction has 68 states and 83 transitions. [2022-04-15 10:24:31,908 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 9 states have (on average 2.111111111111111) internal successors, (19), 8 states have internal predecessors, (19), 3 states have call successors, (5), 2 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 10:24:31,908 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 68 states and 83 transitions. [2022-04-15 10:24:33,996 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 83 edges. 82 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-15 10:24:33,996 INFO L276 IsEmpty]: Start isEmpty. Operand 68 states and 83 transitions. [2022-04-15 10:24:33,997 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 30 [2022-04-15 10:24:33,997 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 10:24:33,997 INFO L499 BasicCegarLoop]: trace histogram [3, 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-04-15 10:24:34,013 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (6)] Forceful destruction successful, exit code 0 [2022-04-15 10:24:34,197 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable5,6 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 10:24:34,197 INFO L403 AbstractCegarLoop]: === Iteration 7 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 10:24:34,198 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 10:24:34,198 INFO L85 PathProgramCache]: Analyzing trace with hash -1613968938, now seen corresponding path program 1 times [2022-04-15 10:24:34,198 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 10:24:34,198 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [184551503] [2022-04-15 10:24:34,198 INFO L202 tedInterpolationCore]: No loops in this trace, falling back to nested interpolation [2022-04-15 10:24:34,198 INFO L85 PathProgramCache]: Analyzing trace with hash -1613968938, now seen corresponding path program 2 times [2022-04-15 10:24:34,198 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 10:24:34,198 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [953097920] [2022-04-15 10:24:34,199 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 10:24:34,199 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 10:24:34,213 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 10:24:34,213 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [241858772] [2022-04-15 10:24:34,213 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 10:24:34,214 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 10:24:34,214 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 10:24:34,214 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-04-15 10:24:34,222 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-04-15 10:24:34,264 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-15 10:24:34,264 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 10:24:34,265 INFO L263 TraceCheckSpWp]: Trace formula consists of 105 conjuncts, 10 conjunts are in the unsatisfiable core [2022-04-15 10:24:34,272 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 10:24:34,273 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 10:24:34,431 INFO L272 TraceCheckUtils]: 0: Hoare triple {2438#true} call ULTIMATE.init(); {2438#true} is VALID [2022-04-15 10:24:34,431 INFO L290 TraceCheckUtils]: 1: Hoare triple {2438#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; {2438#true} is VALID [2022-04-15 10:24:34,431 INFO L290 TraceCheckUtils]: 2: Hoare triple {2438#true} assume true; {2438#true} is VALID [2022-04-15 10:24:34,432 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2438#true} {2438#true} #77#return; {2438#true} is VALID [2022-04-15 10:24:34,432 INFO L272 TraceCheckUtils]: 4: Hoare triple {2438#true} call #t~ret7 := main(); {2438#true} is VALID [2022-04-15 10:24:34,432 INFO L290 TraceCheckUtils]: 5: Hoare triple {2438#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {2438#true} is VALID [2022-04-15 10:24:34,432 INFO L272 TraceCheckUtils]: 6: Hoare triple {2438#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {2438#true} is VALID [2022-04-15 10:24:34,432 INFO L290 TraceCheckUtils]: 7: Hoare triple {2438#true} ~cond := #in~cond; {2464#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-15 10:24:34,433 INFO L290 TraceCheckUtils]: 8: Hoare triple {2464#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {2468#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-15 10:24:34,433 INFO L290 TraceCheckUtils]: 9: Hoare triple {2468#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {2468#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-15 10:24:34,434 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2468#(not (= |assume_abort_if_not_#in~cond| 0))} {2438#true} #69#return; {2475#(<= 1 main_~y~0)} is VALID [2022-04-15 10:24:34,434 INFO L290 TraceCheckUtils]: 11: Hoare triple {2475#(<= 1 main_~y~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0; {2479#(<= 1 main_~b~0)} is VALID [2022-04-15 10:24:34,434 INFO L290 TraceCheckUtils]: 12: Hoare triple {2479#(<= 1 main_~b~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {2479#(<= 1 main_~b~0)} is VALID [2022-04-15 10:24:34,435 INFO L290 TraceCheckUtils]: 13: Hoare triple {2479#(<= 1 main_~b~0)} assume !!(#t~post6 < 20);havoc #t~post6; {2479#(<= 1 main_~b~0)} is VALID [2022-04-15 10:24:34,435 INFO L272 TraceCheckUtils]: 14: Hoare triple {2479#(<= 1 main_~b~0)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {2438#true} is VALID [2022-04-15 10:24:34,435 INFO L290 TraceCheckUtils]: 15: Hoare triple {2438#true} ~cond := #in~cond; {2438#true} is VALID [2022-04-15 10:24:34,435 INFO L290 TraceCheckUtils]: 16: Hoare triple {2438#true} assume !(0 == ~cond); {2438#true} is VALID [2022-04-15 10:24:34,435 INFO L290 TraceCheckUtils]: 17: Hoare triple {2438#true} assume true; {2438#true} is VALID [2022-04-15 10:24:34,436 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {2438#true} {2479#(<= 1 main_~b~0)} #71#return; {2479#(<= 1 main_~b~0)} is VALID [2022-04-15 10:24:34,436 INFO L290 TraceCheckUtils]: 19: Hoare triple {2479#(<= 1 main_~b~0)} assume !(0 != ~a~0 && 0 != ~b~0); {2504#(and (= main_~a~0 0) (<= 1 main_~b~0))} is VALID [2022-04-15 10:24:34,437 INFO L272 TraceCheckUtils]: 20: Hoare triple {2504#(and (= main_~a~0 0) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~q~0 == ~x~0 * ~y~0 then 1 else 0)); {2438#true} is VALID [2022-04-15 10:24:34,437 INFO L290 TraceCheckUtils]: 21: Hoare triple {2438#true} ~cond := #in~cond; {2438#true} is VALID [2022-04-15 10:24:34,437 INFO L290 TraceCheckUtils]: 22: Hoare triple {2438#true} assume !(0 == ~cond); {2438#true} is VALID [2022-04-15 10:24:34,437 INFO L290 TraceCheckUtils]: 23: Hoare triple {2438#true} assume true; {2438#true} is VALID [2022-04-15 10:24:34,437 INFO L284 TraceCheckUtils]: 24: Hoare quadruple {2438#true} {2504#(and (= main_~a~0 0) (<= 1 main_~b~0))} #73#return; {2504#(and (= main_~a~0 0) (<= 1 main_~b~0))} is VALID [2022-04-15 10:24:34,438 INFO L272 TraceCheckUtils]: 25: Hoare triple {2504#(and (= main_~a~0 0) (<= 1 main_~b~0))} call __VERIFIER_assert((if 0 == ~a~0 * ~b~0 then 1 else 0)); {2523#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 10:24:34,438 INFO L290 TraceCheckUtils]: 26: Hoare triple {2523#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {2527#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 10:24:34,439 INFO L290 TraceCheckUtils]: 27: Hoare triple {2527#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2439#false} is VALID [2022-04-15 10:24:34,439 INFO L290 TraceCheckUtils]: 28: Hoare triple {2439#false} assume !false; {2439#false} is VALID [2022-04-15 10:24:34,439 INFO L134 CoverageAnalysis]: Checked inductivity of 8 backedges. 4 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-15 10:24:34,439 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-15 10:24:34,439 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 10:24:34,439 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [953097920] [2022-04-15 10:24:34,439 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 10:24:34,439 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [241858772] [2022-04-15 10:24:34,439 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [241858772] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 10:24:34,440 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 10:24:34,440 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-15 10:24:34,440 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 10:24:34,440 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [184551503] [2022-04-15 10:24:34,440 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [184551503] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 10:24:34,441 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 10:24:34,441 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [9] imperfect sequences [] total 9 [2022-04-15 10:24:34,441 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [1702175257] [2022-04-15 10:24:34,441 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 10:24:34,441 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 8 states have (on average 2.0) internal successors, (16), 7 states have internal predecessors, (16), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) Word has length 29 [2022-04-15 10:24:34,441 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 10:24:34,441 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 9 states, 8 states have (on average 2.0) internal successors, (16), 7 states have internal predecessors, (16), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-15 10:24:34,460 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 26 edges. 26 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 10:24:34,460 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 9 states [2022-04-15 10:24:34,460 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 10:24:34,461 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 9 interpolants. [2022-04-15 10:24:34,461 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=16, Invalid=56, Unknown=0, NotChecked=0, Total=72 [2022-04-15 10:24:34,461 INFO L87 Difference]: Start difference. First operand 68 states and 83 transitions. Second operand has 9 states, 8 states have (on average 2.0) internal successors, (16), 7 states have internal predecessors, (16), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-15 10:24:34,843 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 10:24:34,843 INFO L93 Difference]: Finished difference Result 85 states and 107 transitions. [2022-04-15 10:24:34,843 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 9 states. [2022-04-15 10:24:34,844 INFO L78 Accepts]: Start accepts. Automaton has has 9 states, 8 states have (on average 2.0) internal successors, (16), 7 states have internal predecessors, (16), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) Word has length 29 [2022-04-15 10:24:34,844 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 10:24:34,844 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 8 states have (on average 2.0) internal successors, (16), 7 states have internal predecessors, (16), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-15 10:24:34,845 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 57 transitions. [2022-04-15 10:24:34,845 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 9 states, 8 states have (on average 2.0) internal successors, (16), 7 states have internal predecessors, (16), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-15 10:24:34,849 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 9 states to 9 states and 57 transitions. [2022-04-15 10:24:34,849 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 9 states and 57 transitions. [2022-04-15 10:24:34,913 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 57 edges. 57 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 10:24:34,915 INFO L225 Difference]: With dead ends: 85 [2022-04-15 10:24:34,915 INFO L226 Difference]: Without dead ends: 65 [2022-04-15 10:24:34,915 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 32 GetRequests, 21 SyntacticMatches, 0 SemanticMatches, 11 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 9 ImplicationChecksByTransitivity, 0.1s TimeCoverageRelationStatistics Valid=34, Invalid=122, Unknown=0, NotChecked=0, Total=156 [2022-04-15 10:24:34,916 INFO L913 BasicCegarLoop]: 26 mSDtfsCounter, 33 mSDsluCounter, 131 mSDsCounter, 0 mSdLazyCounter, 122 mSolverCounterSat, 9 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 35 SdHoareTripleChecker+Valid, 157 SdHoareTripleChecker+Invalid, 131 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 9 IncrementalHoareTripleChecker+Valid, 122 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-15 10:24:34,916 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [35 Valid, 157 Invalid, 131 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [9 Valid, 122 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-15 10:24:34,917 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 65 states. [2022-04-15 10:24:34,984 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 65 to 62. [2022-04-15 10:24:34,984 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 10:24:34,984 INFO L82 GeneralOperation]: Start isEquivalent. First operand 65 states. Second operand has 62 states, 45 states have (on average 1.3555555555555556) internal successors, (61), 48 states have internal predecessors, (61), 11 states have call successors, (11), 6 states have call predecessors, (11), 5 states have return successors, (8), 7 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-15 10:24:34,985 INFO L74 IsIncluded]: Start isIncluded. First operand 65 states. Second operand has 62 states, 45 states have (on average 1.3555555555555556) internal successors, (61), 48 states have internal predecessors, (61), 11 states have call successors, (11), 6 states have call predecessors, (11), 5 states have return successors, (8), 7 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-15 10:24:34,986 INFO L87 Difference]: Start difference. First operand 65 states. Second operand has 62 states, 45 states have (on average 1.3555555555555556) internal successors, (61), 48 states have internal predecessors, (61), 11 states have call successors, (11), 6 states have call predecessors, (11), 5 states have return successors, (8), 7 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-15 10:24:34,987 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 10:24:34,988 INFO L93 Difference]: Finished difference Result 65 states and 85 transitions. [2022-04-15 10:24:34,988 INFO L276 IsEmpty]: Start isEmpty. Operand 65 states and 85 transitions. [2022-04-15 10:24:34,988 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 10:24:34,988 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 10:24:34,988 INFO L74 IsIncluded]: Start isIncluded. First operand has 62 states, 45 states have (on average 1.3555555555555556) internal successors, (61), 48 states have internal predecessors, (61), 11 states have call successors, (11), 6 states have call predecessors, (11), 5 states have return successors, (8), 7 states have call predecessors, (8), 8 states have call successors, (8) Second operand 65 states. [2022-04-15 10:24:34,988 INFO L87 Difference]: Start difference. First operand has 62 states, 45 states have (on average 1.3555555555555556) internal successors, (61), 48 states have internal predecessors, (61), 11 states have call successors, (11), 6 states have call predecessors, (11), 5 states have return successors, (8), 7 states have call predecessors, (8), 8 states have call successors, (8) Second operand 65 states. [2022-04-15 10:24:34,990 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 10:24:34,990 INFO L93 Difference]: Finished difference Result 65 states and 85 transitions. [2022-04-15 10:24:34,990 INFO L276 IsEmpty]: Start isEmpty. Operand 65 states and 85 transitions. [2022-04-15 10:24:34,990 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 10:24:34,990 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 10:24:34,990 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 10:24:34,990 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 10:24:34,991 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 62 states, 45 states have (on average 1.3555555555555556) internal successors, (61), 48 states have internal predecessors, (61), 11 states have call successors, (11), 6 states have call predecessors, (11), 5 states have return successors, (8), 7 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-15 10:24:34,993 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 62 states to 62 states and 80 transitions. [2022-04-15 10:24:34,993 INFO L78 Accepts]: Start accepts. Automaton has 62 states and 80 transitions. Word has length 29 [2022-04-15 10:24:34,993 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 10:24:34,993 INFO L478 AbstractCegarLoop]: Abstraction has 62 states and 80 transitions. [2022-04-15 10:24:34,993 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 9 states, 8 states have (on average 2.0) internal successors, (16), 7 states have internal predecessors, (16), 3 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-15 10:24:34,994 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 62 states and 80 transitions. [2022-04-15 10:24:37,094 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 80 edges. 79 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-15 10:24:37,095 INFO L276 IsEmpty]: Start isEmpty. Operand 62 states and 80 transitions. [2022-04-15 10:24:37,095 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 29 [2022-04-15 10:24:37,095 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 10:24:37,095 INFO L499 BasicCegarLoop]: trace histogram [2, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1] [2022-04-15 10:24:37,111 INFO L540 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (7)] Forceful destruction successful, exit code 0 [2022-04-15 10:24:37,296 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable6,7 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 10:24:37,296 INFO L403 AbstractCegarLoop]: === Iteration 8 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 10:24:37,296 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 10:24:37,296 INFO L85 PathProgramCache]: Analyzing trace with hash -1357155568, now seen corresponding path program 1 times [2022-04-15 10:24:37,296 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 10:24:37,296 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [2136082536] [2022-04-15 10:24:43,465 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 3 AssignedVariables, 1 ReadonlyVariables, Eigenvalues: {1={1=1, 2=2}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-15 10:24:45,143 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 3 AssignedVariables, 1 ReadonlyVariables, Eigenvalues: {1={1=1, 2=2}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-15 10:24:49,052 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 3 AssignedVariables, 1 ReadonlyVariables, Eigenvalues: {1={1=1, 2=2}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-15 10:24:49,105 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 3 AssignedVariables, 1 ReadonlyVariables, Eigenvalues: {1={1=1, 2=2}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-15 10:24:49,156 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 3 AssignedVariables, 1 ReadonlyVariables, Eigenvalues: {1={1=1, 2=2}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-15 10:24:49,211 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 3 AssignedVariables, 1 ReadonlyVariables, Eigenvalues: {1={1=1, 2=2}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-15 10:24:49,212 INFO L271 tedInterpolationCore]: Starting analysis with loop acceleration approximation PRECISE [2022-04-15 10:24:49,214 INFO L85 PathProgramCache]: Analyzing trace with hash 1724905837, now seen corresponding path program 1 times [2022-04-15 10:24:49,214 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 10:24:49,215 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [369064135] [2022-04-15 10:24:49,215 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 10:24:49,215 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 10:24:49,225 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 10:24:49,225 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [548944979] [2022-04-15 10:24:49,226 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 10:24:49,226 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 10:24:49,226 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 10:24:49,226 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-04-15 10:24:49,227 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-04-15 10:24:49,315 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 10:24:49,317 INFO L263 TraceCheckSpWp]: Trace formula consists of 125 conjuncts, 41 conjunts are in the unsatisfiable core [2022-04-15 10:24:49,336 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 10:24:49,337 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 10:24:52,098 INFO L272 TraceCheckUtils]: 0: Hoare triple {2965#true} call ULTIMATE.init(); {2965#true} is VALID [2022-04-15 10:24:52,103 INFO L290 TraceCheckUtils]: 1: Hoare triple {2965#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; {2973#(= ~counter~0 0)} is VALID [2022-04-15 10:24:52,104 INFO L290 TraceCheckUtils]: 2: Hoare triple {2973#(= ~counter~0 0)} assume true; {2973#(= ~counter~0 0)} is VALID [2022-04-15 10:24:52,106 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2973#(= ~counter~0 0)} {2965#true} #77#return; {2973#(= ~counter~0 0)} is VALID [2022-04-15 10:24:52,107 INFO L272 TraceCheckUtils]: 4: Hoare triple {2973#(= ~counter~0 0)} call #t~ret7 := main(); {2973#(= ~counter~0 0)} is VALID [2022-04-15 10:24:52,108 INFO L290 TraceCheckUtils]: 5: Hoare triple {2973#(= ~counter~0 0)} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {2973#(= ~counter~0 0)} is VALID [2022-04-15 10:24:52,108 INFO L272 TraceCheckUtils]: 6: Hoare triple {2973#(= ~counter~0 0)} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {2973#(= ~counter~0 0)} is VALID [2022-04-15 10:24:52,108 INFO L290 TraceCheckUtils]: 7: Hoare triple {2973#(= ~counter~0 0)} ~cond := #in~cond; {2973#(= ~counter~0 0)} is VALID [2022-04-15 10:24:52,109 INFO L290 TraceCheckUtils]: 8: Hoare triple {2973#(= ~counter~0 0)} assume !(0 == ~cond); {2973#(= ~counter~0 0)} is VALID [2022-04-15 10:24:52,109 INFO L290 TraceCheckUtils]: 9: Hoare triple {2973#(= ~counter~0 0)} assume true; {2973#(= ~counter~0 0)} is VALID [2022-04-15 10:24:52,112 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2973#(= ~counter~0 0)} {2973#(= ~counter~0 0)} #69#return; {2973#(= ~counter~0 0)} is VALID [2022-04-15 10:24:52,113 INFO L290 TraceCheckUtils]: 11: Hoare triple {2973#(= ~counter~0 0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0; {3004#(and (= main_~b~0 main_~y~0) (= ~counter~0 0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 10:24:52,113 INFO L290 TraceCheckUtils]: 12: Hoare triple {3004#(and (= main_~b~0 main_~y~0) (= ~counter~0 0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} [81] L46-2-->L33-1_primed: Formula: (and (= v_main_~q~0_28 v_main_~q~0_27) (= |v_main_#t~post6_17| |v_main_#t~post6_15|) (= v_~counter~0_29 v_~counter~0_28) (= v_main_~a~0_38 v_main_~a~0_37)) InVars {main_~q~0=v_main_~q~0_28, ~counter~0=v_~counter~0_29, main_#t~post6=|v_main_#t~post6_17|, main_~a~0=v_main_~a~0_38} OutVars{main_~q~0=v_main_~q~0_27, ~counter~0=v_~counter~0_28, main_#t~post6=|v_main_#t~post6_15|, main_~a~0=v_main_~a~0_37} AuxVars[] AssignedVars[main_~q~0, ~counter~0, main_#t~post6, main_~a~0] {3004#(and (= main_~b~0 main_~y~0) (= ~counter~0 0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 10:24:52,114 INFO L290 TraceCheckUtils]: 13: Hoare triple {3004#(and (= main_~b~0 main_~y~0) (= ~counter~0 0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} [82] L33-1_primed-->L46-2: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3004#(and (= main_~b~0 main_~y~0) (= ~counter~0 0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} is VALID [2022-04-15 10:24:52,115 INFO L290 TraceCheckUtils]: 14: Hoare triple {3004#(and (= main_~b~0 main_~y~0) (= ~counter~0 0) (= main_~q~0 0) (= main_~a~0 main_~x~0) (= main_~p~0 1))} [83] L46-2-->L33-1_primed: Formula: (let ((.cse2 (+ (* v_main_~p~0_29 v_main_~a~0_38 v_main_~b~0_37) v_main_~q~0_28))) (let ((.cse7 (= v_main_~q~0_28 v_main_~q~0_27)) (.cse8 (= |v_main_#t~post6_20| |v_main_#t~post6_15|)) (.cse9 (= v_~counter~0_29 v_~counter~0_28)) (.cse1 (= (mod v_main_~b~0_37 2) 0)) (.cse0 (= 0 v_main_~b~0_37)) (.cse5 (<= 0 v_main_~a~0_38)) (.cse3 (= (mod v_main_~a~0_38 2) 1)) (.cse6 (< v_~counter~0_29 20)) (.cse4 (= (* v_main_~x~0_22 v_main_~y~0_26) .cse2)) (.cse10 (= v_main_~a~0_38 v_main_~a~0_37))) (or (and (not .cse0) .cse1 (< v_main_~a~0_37 v_main_~a~0_38) (= (+ v_main_~q~0_27 (* v_main_~p~0_29 v_main_~a~0_37 v_main_~b~0_37)) .cse2) .cse3 (< v_main_~a~0_38 (+ 2 v_main_~a~0_37)) .cse4 (= (+ v_~counter~0_29 v_main_~a~0_38) (+ v_~counter~0_28 v_main_~a~0_37)) .cse5 .cse6) (and .cse7 (= v_main_~p~0_29 v_main_~p~0_29) .cse8 (= v_main_~b~0_37 v_main_~b~0_37) .cse9 (= v_main_~x~0_22 v_main_~x~0_22) (= v_main_~y~0_26 v_main_~y~0_26) .cse10) (and .cse7 .cse8 .cse9 (or (not .cse1) .cse0 (not .cse5) (not .cse3) (not .cse6) (not .cse4)) .cse10)))) InVars {main_~q~0=v_main_~q~0_28, ~counter~0=v_~counter~0_29, main_~x~0=v_main_~x~0_22, main_~y~0=v_main_~y~0_26, main_~b~0=v_main_~b~0_37, main_~p~0=v_main_~p~0_29, main_#t~post6=|v_main_#t~post6_20|, main_~a~0=v_main_~a~0_38} OutVars{main_~q~0=v_main_~q~0_27, ~counter~0=v_~counter~0_28, main_~x~0=v_main_~x~0_22, main_~y~0=v_main_~y~0_26, main_~b~0=v_main_~b~0_37, main_~p~0=v_main_~p~0_29, main_#t~post6=|v_main_#t~post6_15|, main_~a~0=v_main_~a~0_37} AuxVars[] AssignedVars[main_~q~0, ~counter~0, main_#t~post6, main_~a~0] {3014#(and (or (and (= (mod main_~x~0 2) 1) (= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~b~0 main_~p~0 main_~x~0)) (= (+ ~counter~0 main_~a~0) main_~x~0) (< main_~x~0 (+ main_~a~0 2)) (<= 0 main_~x~0) (= (mod main_~b~0 2) 0) (< main_~a~0 main_~x~0) (not (= main_~b~0 0))) (and (= ~counter~0 0) (= main_~q~0 0) (= main_~a~0 main_~x~0))) (= main_~b~0 main_~y~0) (= main_~p~0 1))} is VALID [2022-04-15 10:24:52,116 INFO L290 TraceCheckUtils]: 15: Hoare triple {3014#(and (or (and (= (mod main_~x~0 2) 1) (= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~b~0 main_~p~0 main_~x~0)) (= (+ ~counter~0 main_~a~0) main_~x~0) (< main_~x~0 (+ main_~a~0 2)) (<= 0 main_~x~0) (= (mod main_~b~0 2) 0) (< main_~a~0 main_~x~0) (not (= main_~b~0 0))) (and (= ~counter~0 0) (= main_~q~0 0) (= main_~a~0 main_~x~0))) (= main_~b~0 main_~y~0) (= main_~p~0 1))} [84] L33-1_primed-->L46-2: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3014#(and (or (and (= (mod main_~x~0 2) 1) (= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~b~0 main_~p~0 main_~x~0)) (= (+ ~counter~0 main_~a~0) main_~x~0) (< main_~x~0 (+ main_~a~0 2)) (<= 0 main_~x~0) (= (mod main_~b~0 2) 0) (< main_~a~0 main_~x~0) (not (= main_~b~0 0))) (and (= ~counter~0 0) (= main_~q~0 0) (= main_~a~0 main_~x~0))) (= main_~b~0 main_~y~0) (= main_~p~0 1))} is VALID [2022-04-15 10:24:52,124 INFO L290 TraceCheckUtils]: 16: Hoare triple {3014#(and (or (and (= (mod main_~x~0 2) 1) (= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~b~0 main_~p~0 main_~x~0)) (= (+ ~counter~0 main_~a~0) main_~x~0) (< main_~x~0 (+ main_~a~0 2)) (<= 0 main_~x~0) (= (mod main_~b~0 2) 0) (< main_~a~0 main_~x~0) (not (= main_~b~0 0))) (and (= ~counter~0 0) (= main_~q~0 0) (= main_~a~0 main_~x~0))) (= main_~b~0 main_~y~0) (= main_~p~0 1))} [85] L46-2-->L33-1_primed: Formula: (let ((.cse3 (= 0 v_main_~b~0_37)) (.cse2 (= (mod v_main_~b~0_37 2) 0)) (.cse6 (= (* v_main_~x~0_22 v_main_~y~0_26) (+ (* v_main_~p~0_29 v_main_~a~0_38 v_main_~b~0_37) v_main_~q~0_28))) (.cse4 (<= 0 v_main_~a~0_38)) (.cse5 (< v_~counter~0_29 20)) (.cse0 (= v_main_~q~0_28 v_main_~q~0_27)) (.cse1 (= v_~counter~0_29 v_~counter~0_28)) (.cse7 (= |v_main_#t~post6_23| |v_main_#t~post6_15|)) (.cse8 (= v_main_~a~0_38 v_main_~a~0_37))) (or (and .cse0 .cse1 (or (not .cse2) .cse3 (not .cse4) (not (= (mod v_main_~a~0_38 2) 1)) (not .cse5) (not .cse6)) .cse7 .cse8) (and (not .cse3) (= (+ v_main_~q~0_27 (* v_main_~p~0_29 v_~counter~0_29 v_main_~b~0_37)) (+ v_main_~q~0_28 (* v_main_~p~0_29 v_~counter~0_28 v_main_~b~0_37))) .cse2 (< v_~counter~0_29 v_~counter~0_28) .cse6 (= (+ v_~counter~0_29 v_main_~a~0_38) (+ v_~counter~0_28 v_main_~a~0_37)) (<= (div (+ v_~counter~0_29 (* (- 1) v_main_~a~0_38) (* (- 1) v_~counter~0_28)) (- 2)) (+ (div (+ (- 1) v_main_~a~0_38) 2) 1)) .cse4 .cse5) (and .cse0 (= v_main_~p~0_29 v_main_~p~0_29) (= v_main_~b~0_37 v_main_~b~0_37) .cse1 .cse7 (= v_main_~x~0_22 v_main_~x~0_22) (= v_main_~y~0_26 v_main_~y~0_26) .cse8))) InVars {main_~q~0=v_main_~q~0_28, ~counter~0=v_~counter~0_29, main_~x~0=v_main_~x~0_22, main_~y~0=v_main_~y~0_26, main_~b~0=v_main_~b~0_37, main_~p~0=v_main_~p~0_29, main_#t~post6=|v_main_#t~post6_23|, main_~a~0=v_main_~a~0_38} OutVars{main_~q~0=v_main_~q~0_27, ~counter~0=v_~counter~0_28, main_~x~0=v_main_~x~0_22, main_~y~0=v_main_~y~0_26, main_~b~0=v_main_~b~0_37, main_~p~0=v_main_~p~0_29, main_#t~post6=|v_main_#t~post6_15|, main_~a~0=v_main_~a~0_37} AuxVars[] AssignedVars[main_~q~0, ~counter~0, main_#t~post6, main_~a~0] {3021#(and (or (and (= (mod main_~x~0 2) 1) (= (* main_~b~0 main_~p~0 (+ (* (- 1) main_~a~0) main_~x~0)) main_~q~0) (< main_~x~0 (+ main_~a~0 2)) (<= 0 main_~x~0) (= (mod main_~b~0 2) 0) (< main_~a~0 main_~x~0) (not (= main_~b~0 0))) (and (= main_~q~0 0) (= main_~a~0 main_~x~0))) (= main_~b~0 main_~y~0) (= main_~p~0 1))} is VALID [2022-04-15 10:24:52,125 INFO L290 TraceCheckUtils]: 17: Hoare triple {3021#(and (or (and (= (mod main_~x~0 2) 1) (= (* main_~b~0 main_~p~0 (+ (* (- 1) main_~a~0) main_~x~0)) main_~q~0) (< main_~x~0 (+ main_~a~0 2)) (<= 0 main_~x~0) (= (mod main_~b~0 2) 0) (< main_~a~0 main_~x~0) (not (= main_~b~0 0))) (and (= main_~q~0 0) (= main_~a~0 main_~x~0))) (= main_~b~0 main_~y~0) (= main_~p~0 1))} [86] L33-1_primed-->L46-2: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3021#(and (or (and (= (mod main_~x~0 2) 1) (= (* main_~b~0 main_~p~0 (+ (* (- 1) main_~a~0) main_~x~0)) main_~q~0) (< main_~x~0 (+ main_~a~0 2)) (<= 0 main_~x~0) (= (mod main_~b~0 2) 0) (< main_~a~0 main_~x~0) (not (= main_~b~0 0))) (and (= main_~q~0 0) (= main_~a~0 main_~x~0))) (= main_~b~0 main_~y~0) (= main_~p~0 1))} is VALID [2022-04-15 10:24:52,126 INFO L290 TraceCheckUtils]: 18: Hoare triple {3021#(and (or (and (= (mod main_~x~0 2) 1) (= (* main_~b~0 main_~p~0 (+ (* (- 1) main_~a~0) main_~x~0)) main_~q~0) (< main_~x~0 (+ main_~a~0 2)) (<= 0 main_~x~0) (= (mod main_~b~0 2) 0) (< main_~a~0 main_~x~0) (not (= main_~b~0 0))) (and (= main_~q~0 0) (= main_~a~0 main_~x~0))) (= main_~b~0 main_~y~0) (= main_~p~0 1))} [87] L46-2-->L33-1_primed: Formula: (and (= v_main_~q~0_28 v_main_~q~0_27) (= v_~counter~0_29 v_~counter~0_28) (= |v_main_#t~post6_26| |v_main_#t~post6_15|) (= v_main_~a~0_38 v_main_~a~0_37)) InVars {main_~q~0=v_main_~q~0_28, ~counter~0=v_~counter~0_29, main_#t~post6=|v_main_#t~post6_26|, main_~a~0=v_main_~a~0_38} OutVars{main_~q~0=v_main_~q~0_27, ~counter~0=v_~counter~0_28, main_#t~post6=|v_main_#t~post6_15|, main_~a~0=v_main_~a~0_37} AuxVars[] AssignedVars[main_~q~0, ~counter~0, main_#t~post6, main_~a~0] {3021#(and (or (and (= (mod main_~x~0 2) 1) (= (* main_~b~0 main_~p~0 (+ (* (- 1) main_~a~0) main_~x~0)) main_~q~0) (< main_~x~0 (+ main_~a~0 2)) (<= 0 main_~x~0) (= (mod main_~b~0 2) 0) (< main_~a~0 main_~x~0) (not (= main_~b~0 0))) (and (= main_~q~0 0) (= main_~a~0 main_~x~0))) (= main_~b~0 main_~y~0) (= main_~p~0 1))} is VALID [2022-04-15 10:24:52,127 INFO L290 TraceCheckUtils]: 19: Hoare triple {3021#(and (or (and (= (mod main_~x~0 2) 1) (= (* main_~b~0 main_~p~0 (+ (* (- 1) main_~a~0) main_~x~0)) main_~q~0) (< main_~x~0 (+ main_~a~0 2)) (<= 0 main_~x~0) (= (mod main_~b~0 2) 0) (< main_~a~0 main_~x~0) (not (= main_~b~0 0))) (and (= main_~q~0 0) (= main_~a~0 main_~x~0))) (= main_~b~0 main_~y~0) (= main_~p~0 1))} [88] L33-1_primed-->L46-2: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3021#(and (or (and (= (mod main_~x~0 2) 1) (= (* main_~b~0 main_~p~0 (+ (* (- 1) main_~a~0) main_~x~0)) main_~q~0) (< main_~x~0 (+ main_~a~0 2)) (<= 0 main_~x~0) (= (mod main_~b~0 2) 0) (< main_~a~0 main_~x~0) (not (= main_~b~0 0))) (and (= main_~q~0 0) (= main_~a~0 main_~x~0))) (= main_~b~0 main_~y~0) (= main_~p~0 1))} is VALID [2022-04-15 10:24:52,127 INFO L290 TraceCheckUtils]: 20: Hoare triple {3021#(and (or (and (= (mod main_~x~0 2) 1) (= (* main_~b~0 main_~p~0 (+ (* (- 1) main_~a~0) main_~x~0)) main_~q~0) (< main_~x~0 (+ main_~a~0 2)) (<= 0 main_~x~0) (= (mod main_~b~0 2) 0) (< main_~a~0 main_~x~0) (not (= main_~b~0 0))) (and (= main_~q~0 0) (= main_~a~0 main_~x~0))) (= main_~b~0 main_~y~0) (= main_~p~0 1))} [89] L46-2-->L33-1_primed: Formula: (and (= v_main_~q~0_28 v_main_~q~0_27) (= v_~counter~0_29 v_~counter~0_28) (= |v_main_#t~post6_29| |v_main_#t~post6_15|) (= v_main_~a~0_38 v_main_~a~0_37)) InVars {main_~q~0=v_main_~q~0_28, ~counter~0=v_~counter~0_29, main_#t~post6=|v_main_#t~post6_29|, main_~a~0=v_main_~a~0_38} OutVars{main_~q~0=v_main_~q~0_27, ~counter~0=v_~counter~0_28, main_#t~post6=|v_main_#t~post6_15|, main_~a~0=v_main_~a~0_37} AuxVars[] AssignedVars[main_~q~0, ~counter~0, main_#t~post6, main_~a~0] {3021#(and (or (and (= (mod main_~x~0 2) 1) (= (* main_~b~0 main_~p~0 (+ (* (- 1) main_~a~0) main_~x~0)) main_~q~0) (< main_~x~0 (+ main_~a~0 2)) (<= 0 main_~x~0) (= (mod main_~b~0 2) 0) (< main_~a~0 main_~x~0) (not (= main_~b~0 0))) (and (= main_~q~0 0) (= main_~a~0 main_~x~0))) (= main_~b~0 main_~y~0) (= main_~p~0 1))} is VALID [2022-04-15 10:24:52,128 INFO L290 TraceCheckUtils]: 21: Hoare triple {3021#(and (or (and (= (mod main_~x~0 2) 1) (= (* main_~b~0 main_~p~0 (+ (* (- 1) main_~a~0) main_~x~0)) main_~q~0) (< main_~x~0 (+ main_~a~0 2)) (<= 0 main_~x~0) (= (mod main_~b~0 2) 0) (< main_~a~0 main_~x~0) (not (= main_~b~0 0))) (and (= main_~q~0 0) (= main_~a~0 main_~x~0))) (= main_~b~0 main_~y~0) (= main_~p~0 1))} [90] L33-1_primed-->L46-2: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3021#(and (or (and (= (mod main_~x~0 2) 1) (= (* main_~b~0 main_~p~0 (+ (* (- 1) main_~a~0) main_~x~0)) main_~q~0) (< main_~x~0 (+ main_~a~0 2)) (<= 0 main_~x~0) (= (mod main_~b~0 2) 0) (< main_~a~0 main_~x~0) (not (= main_~b~0 0))) (and (= main_~q~0 0) (= main_~a~0 main_~x~0))) (= main_~b~0 main_~y~0) (= main_~p~0 1))} is VALID [2022-04-15 10:24:52,129 INFO L290 TraceCheckUtils]: 22: Hoare triple {3021#(and (or (and (= (mod main_~x~0 2) 1) (= (* main_~b~0 main_~p~0 (+ (* (- 1) main_~a~0) main_~x~0)) main_~q~0) (< main_~x~0 (+ main_~a~0 2)) (<= 0 main_~x~0) (= (mod main_~b~0 2) 0) (< main_~a~0 main_~x~0) (not (= main_~b~0 0))) (and (= main_~q~0 0) (= main_~a~0 main_~x~0))) (= main_~b~0 main_~y~0) (= main_~p~0 1))} [91] L46-2-->L33-1_primed: Formula: (and (= v_main_~q~0_28 v_main_~q~0_27) (= |v_main_#t~post6_32| |v_main_#t~post6_15|) (= v_~counter~0_29 v_~counter~0_28) (= v_main_~a~0_38 v_main_~a~0_37)) InVars {main_~q~0=v_main_~q~0_28, ~counter~0=v_~counter~0_29, main_#t~post6=|v_main_#t~post6_32|, main_~a~0=v_main_~a~0_38} OutVars{main_~q~0=v_main_~q~0_27, ~counter~0=v_~counter~0_28, main_#t~post6=|v_main_#t~post6_15|, main_~a~0=v_main_~a~0_37} AuxVars[] AssignedVars[main_~q~0, ~counter~0, main_#t~post6, main_~a~0] {3021#(and (or (and (= (mod main_~x~0 2) 1) (= (* main_~b~0 main_~p~0 (+ (* (- 1) main_~a~0) main_~x~0)) main_~q~0) (< main_~x~0 (+ main_~a~0 2)) (<= 0 main_~x~0) (= (mod main_~b~0 2) 0) (< main_~a~0 main_~x~0) (not (= main_~b~0 0))) (and (= main_~q~0 0) (= main_~a~0 main_~x~0))) (= main_~b~0 main_~y~0) (= main_~p~0 1))} is VALID [2022-04-15 10:24:52,129 INFO L290 TraceCheckUtils]: 23: Hoare triple {3021#(and (or (and (= (mod main_~x~0 2) 1) (= (* main_~b~0 main_~p~0 (+ (* (- 1) main_~a~0) main_~x~0)) main_~q~0) (< main_~x~0 (+ main_~a~0 2)) (<= 0 main_~x~0) (= (mod main_~b~0 2) 0) (< main_~a~0 main_~x~0) (not (= main_~b~0 0))) (and (= main_~q~0 0) (= main_~a~0 main_~x~0))) (= main_~b~0 main_~y~0) (= main_~p~0 1))} [80] L33-1_primed-->L33-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {3021#(and (or (and (= (mod main_~x~0 2) 1) (= (* main_~b~0 main_~p~0 (+ (* (- 1) main_~a~0) main_~x~0)) main_~q~0) (< main_~x~0 (+ main_~a~0 2)) (<= 0 main_~x~0) (= (mod main_~b~0 2) 0) (< main_~a~0 main_~x~0) (not (= main_~b~0 0))) (and (= main_~q~0 0) (= main_~a~0 main_~x~0))) (= main_~b~0 main_~y~0) (= main_~p~0 1))} is VALID [2022-04-15 10:24:52,130 INFO L290 TraceCheckUtils]: 24: Hoare triple {3021#(and (or (and (= (mod main_~x~0 2) 1) (= (* main_~b~0 main_~p~0 (+ (* (- 1) main_~a~0) main_~x~0)) main_~q~0) (< main_~x~0 (+ main_~a~0 2)) (<= 0 main_~x~0) (= (mod main_~b~0 2) 0) (< main_~a~0 main_~x~0) (not (= main_~b~0 0))) (and (= main_~q~0 0) (= main_~a~0 main_~x~0))) (= main_~b~0 main_~y~0) (= main_~p~0 1))} assume !!(#t~post6 < 20);havoc #t~post6; {3021#(and (or (and (= (mod main_~x~0 2) 1) (= (* main_~b~0 main_~p~0 (+ (* (- 1) main_~a~0) main_~x~0)) main_~q~0) (< main_~x~0 (+ main_~a~0 2)) (<= 0 main_~x~0) (= (mod main_~b~0 2) 0) (< main_~a~0 main_~x~0) (not (= main_~b~0 0))) (and (= main_~q~0 0) (= main_~a~0 main_~x~0))) (= main_~b~0 main_~y~0) (= main_~p~0 1))} is VALID [2022-04-15 10:24:52,132 INFO L272 TraceCheckUtils]: 25: Hoare triple {3021#(and (or (and (= (mod main_~x~0 2) 1) (= (* main_~b~0 main_~p~0 (+ (* (- 1) main_~a~0) main_~x~0)) main_~q~0) (< main_~x~0 (+ main_~a~0 2)) (<= 0 main_~x~0) (= (mod main_~b~0 2) 0) (< main_~a~0 main_~x~0) (not (= main_~b~0 0))) (and (= main_~q~0 0) (= main_~a~0 main_~x~0))) (= main_~b~0 main_~y~0) (= main_~p~0 1))} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {3049#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 10:24:52,133 INFO L290 TraceCheckUtils]: 26: Hoare triple {3049#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {3053#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 10:24:52,133 INFO L290 TraceCheckUtils]: 27: Hoare triple {3053#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2966#false} is VALID [2022-04-15 10:24:52,133 INFO L290 TraceCheckUtils]: 28: Hoare triple {2966#false} assume !false; {2966#false} is VALID [2022-04-15 10:24:52,133 INFO L134 CoverageAnalysis]: Checked inductivity of 30 backedges. 0 proven. 20 refuted. 0 times theorem prover too weak. 10 trivial. 0 not checked. [2022-04-15 10:24:52,133 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 10:24:54,526 INFO L290 TraceCheckUtils]: 28: Hoare triple {2966#false} assume !false; {2966#false} is VALID [2022-04-15 10:24:54,527 INFO L290 TraceCheckUtils]: 27: Hoare triple {3053#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {2966#false} is VALID [2022-04-15 10:24:54,527 INFO L290 TraceCheckUtils]: 26: Hoare triple {3049#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {3053#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 10:24:54,528 INFO L272 TraceCheckUtils]: 25: Hoare triple {3069#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {3049#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 10:24:54,528 INFO L290 TraceCheckUtils]: 24: Hoare triple {3069#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} assume !!(#t~post6 < 20);havoc #t~post6; {3069#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} is VALID [2022-04-15 10:24:54,529 INFO L290 TraceCheckUtils]: 23: Hoare triple {3069#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} [80] L33-1_primed-->L33-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {3069#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} is VALID [2022-04-15 10:24:54,529 INFO L290 TraceCheckUtils]: 22: Hoare triple {3069#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} [91] L46-2-->L33-1_primed: Formula: (and (= v_main_~q~0_28 v_main_~q~0_27) (= |v_main_#t~post6_32| |v_main_#t~post6_15|) (= v_~counter~0_29 v_~counter~0_28) (= v_main_~a~0_38 v_main_~a~0_37)) InVars {main_~q~0=v_main_~q~0_28, ~counter~0=v_~counter~0_29, main_#t~post6=|v_main_#t~post6_32|, main_~a~0=v_main_~a~0_38} OutVars{main_~q~0=v_main_~q~0_27, ~counter~0=v_~counter~0_28, main_#t~post6=|v_main_#t~post6_15|, main_~a~0=v_main_~a~0_37} AuxVars[] AssignedVars[main_~q~0, ~counter~0, main_#t~post6, main_~a~0] {3069#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} is VALID [2022-04-15 10:24:54,530 INFO L290 TraceCheckUtils]: 21: Hoare triple {3069#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} [90] L33-1_primed-->L46-2: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3069#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} is VALID [2022-04-15 10:24:54,530 INFO L290 TraceCheckUtils]: 20: Hoare triple {3069#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} [89] L46-2-->L33-1_primed: Formula: (and (= v_main_~q~0_28 v_main_~q~0_27) (= v_~counter~0_29 v_~counter~0_28) (= |v_main_#t~post6_29| |v_main_#t~post6_15|) (= v_main_~a~0_38 v_main_~a~0_37)) InVars {main_~q~0=v_main_~q~0_28, ~counter~0=v_~counter~0_29, main_#t~post6=|v_main_#t~post6_29|, main_~a~0=v_main_~a~0_38} OutVars{main_~q~0=v_main_~q~0_27, ~counter~0=v_~counter~0_28, main_#t~post6=|v_main_#t~post6_15|, main_~a~0=v_main_~a~0_37} AuxVars[] AssignedVars[main_~q~0, ~counter~0, main_#t~post6, main_~a~0] {3069#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} is VALID [2022-04-15 10:24:54,530 INFO L290 TraceCheckUtils]: 19: Hoare triple {3069#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} [88] L33-1_primed-->L46-2: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3069#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} is VALID [2022-04-15 10:24:54,531 INFO L290 TraceCheckUtils]: 18: Hoare triple {3069#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} [87] L46-2-->L33-1_primed: Formula: (and (= v_main_~q~0_28 v_main_~q~0_27) (= v_~counter~0_29 v_~counter~0_28) (= |v_main_#t~post6_26| |v_main_#t~post6_15|) (= v_main_~a~0_38 v_main_~a~0_37)) InVars {main_~q~0=v_main_~q~0_28, ~counter~0=v_~counter~0_29, main_#t~post6=|v_main_#t~post6_26|, main_~a~0=v_main_~a~0_38} OutVars{main_~q~0=v_main_~q~0_27, ~counter~0=v_~counter~0_28, main_#t~post6=|v_main_#t~post6_15|, main_~a~0=v_main_~a~0_37} AuxVars[] AssignedVars[main_~q~0, ~counter~0, main_#t~post6, main_~a~0] {3069#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} is VALID [2022-04-15 10:24:54,531 INFO L290 TraceCheckUtils]: 17: Hoare triple {3069#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} [86] L33-1_primed-->L46-2: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3069#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} is VALID [2022-04-15 10:24:54,553 INFO L290 TraceCheckUtils]: 16: Hoare triple {3069#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} [85] L46-2-->L33-1_primed: Formula: (let ((.cse3 (= 0 v_main_~b~0_37)) (.cse2 (= (mod v_main_~b~0_37 2) 0)) (.cse6 (= (* v_main_~x~0_22 v_main_~y~0_26) (+ (* v_main_~p~0_29 v_main_~a~0_38 v_main_~b~0_37) v_main_~q~0_28))) (.cse4 (<= 0 v_main_~a~0_38)) (.cse5 (< v_~counter~0_29 20)) (.cse0 (= v_main_~q~0_28 v_main_~q~0_27)) (.cse1 (= v_~counter~0_29 v_~counter~0_28)) (.cse7 (= |v_main_#t~post6_23| |v_main_#t~post6_15|)) (.cse8 (= v_main_~a~0_38 v_main_~a~0_37))) (or (and .cse0 .cse1 (or (not .cse2) .cse3 (not .cse4) (not (= (mod v_main_~a~0_38 2) 1)) (not .cse5) (not .cse6)) .cse7 .cse8) (and (not .cse3) (= (+ v_main_~q~0_27 (* v_main_~p~0_29 v_~counter~0_29 v_main_~b~0_37)) (+ v_main_~q~0_28 (* v_main_~p~0_29 v_~counter~0_28 v_main_~b~0_37))) .cse2 (< v_~counter~0_29 v_~counter~0_28) .cse6 (= (+ v_~counter~0_29 v_main_~a~0_38) (+ v_~counter~0_28 v_main_~a~0_37)) (<= (div (+ v_~counter~0_29 (* (- 1) v_main_~a~0_38) (* (- 1) v_~counter~0_28)) (- 2)) (+ (div (+ (- 1) v_main_~a~0_38) 2) 1)) .cse4 .cse5) (and .cse0 (= v_main_~p~0_29 v_main_~p~0_29) (= v_main_~b~0_37 v_main_~b~0_37) .cse1 .cse7 (= v_main_~x~0_22 v_main_~x~0_22) (= v_main_~y~0_26 v_main_~y~0_26) .cse8))) InVars {main_~q~0=v_main_~q~0_28, ~counter~0=v_~counter~0_29, main_~x~0=v_main_~x~0_22, main_~y~0=v_main_~y~0_26, main_~b~0=v_main_~b~0_37, main_~p~0=v_main_~p~0_29, main_#t~post6=|v_main_#t~post6_23|, main_~a~0=v_main_~a~0_38} OutVars{main_~q~0=v_main_~q~0_27, ~counter~0=v_~counter~0_28, main_~x~0=v_main_~x~0_22, main_~y~0=v_main_~y~0_26, main_~b~0=v_main_~b~0_37, main_~p~0=v_main_~p~0_29, main_#t~post6=|v_main_#t~post6_15|, main_~a~0=v_main_~a~0_37} AuxVars[] AssignedVars[main_~q~0, ~counter~0, main_#t~post6, main_~a~0] {3069#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} is VALID [2022-04-15 10:24:54,553 INFO L290 TraceCheckUtils]: 15: Hoare triple {3069#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} [84] L33-1_primed-->L46-2: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3069#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} is VALID [2022-04-15 10:24:54,558 INFO L290 TraceCheckUtils]: 14: Hoare triple {3069#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} [83] L46-2-->L33-1_primed: Formula: (let ((.cse2 (+ (* v_main_~p~0_29 v_main_~a~0_38 v_main_~b~0_37) v_main_~q~0_28))) (let ((.cse7 (= v_main_~q~0_28 v_main_~q~0_27)) (.cse8 (= |v_main_#t~post6_20| |v_main_#t~post6_15|)) (.cse9 (= v_~counter~0_29 v_~counter~0_28)) (.cse1 (= (mod v_main_~b~0_37 2) 0)) (.cse0 (= 0 v_main_~b~0_37)) (.cse5 (<= 0 v_main_~a~0_38)) (.cse3 (= (mod v_main_~a~0_38 2) 1)) (.cse6 (< v_~counter~0_29 20)) (.cse4 (= (* v_main_~x~0_22 v_main_~y~0_26) .cse2)) (.cse10 (= v_main_~a~0_38 v_main_~a~0_37))) (or (and (not .cse0) .cse1 (< v_main_~a~0_37 v_main_~a~0_38) (= (+ v_main_~q~0_27 (* v_main_~p~0_29 v_main_~a~0_37 v_main_~b~0_37)) .cse2) .cse3 (< v_main_~a~0_38 (+ 2 v_main_~a~0_37)) .cse4 (= (+ v_~counter~0_29 v_main_~a~0_38) (+ v_~counter~0_28 v_main_~a~0_37)) .cse5 .cse6) (and .cse7 (= v_main_~p~0_29 v_main_~p~0_29) .cse8 (= v_main_~b~0_37 v_main_~b~0_37) .cse9 (= v_main_~x~0_22 v_main_~x~0_22) (= v_main_~y~0_26 v_main_~y~0_26) .cse10) (and .cse7 .cse8 .cse9 (or (not .cse1) .cse0 (not .cse5) (not .cse3) (not .cse6) (not .cse4)) .cse10)))) InVars {main_~q~0=v_main_~q~0_28, ~counter~0=v_~counter~0_29, main_~x~0=v_main_~x~0_22, main_~y~0=v_main_~y~0_26, main_~b~0=v_main_~b~0_37, main_~p~0=v_main_~p~0_29, main_#t~post6=|v_main_#t~post6_20|, main_~a~0=v_main_~a~0_38} OutVars{main_~q~0=v_main_~q~0_27, ~counter~0=v_~counter~0_28, main_~x~0=v_main_~x~0_22, main_~y~0=v_main_~y~0_26, main_~b~0=v_main_~b~0_37, main_~p~0=v_main_~p~0_29, main_#t~post6=|v_main_#t~post6_15|, main_~a~0=v_main_~a~0_37} AuxVars[] AssignedVars[main_~q~0, ~counter~0, main_#t~post6, main_~a~0] {3069#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} is VALID [2022-04-15 10:24:54,559 INFO L290 TraceCheckUtils]: 13: Hoare triple {3069#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} [82] L33-1_primed-->L46-2: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {3069#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} is VALID [2022-04-15 10:24:54,559 INFO L290 TraceCheckUtils]: 12: Hoare triple {3069#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} [81] L46-2-->L33-1_primed: Formula: (and (= v_main_~q~0_28 v_main_~q~0_27) (= |v_main_#t~post6_17| |v_main_#t~post6_15|) (= v_~counter~0_29 v_~counter~0_28) (= v_main_~a~0_38 v_main_~a~0_37)) InVars {main_~q~0=v_main_~q~0_28, ~counter~0=v_~counter~0_29, main_#t~post6=|v_main_#t~post6_17|, main_~a~0=v_main_~a~0_38} OutVars{main_~q~0=v_main_~q~0_27, ~counter~0=v_~counter~0_28, main_#t~post6=|v_main_#t~post6_15|, main_~a~0=v_main_~a~0_37} AuxVars[] AssignedVars[main_~q~0, ~counter~0, main_#t~post6, main_~a~0] {3069#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} is VALID [2022-04-15 10:24:54,560 INFO L290 TraceCheckUtils]: 11: Hoare triple {2965#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0; {3069#(= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0))} is VALID [2022-04-15 10:24:54,560 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {2965#true} {2965#true} #69#return; {2965#true} is VALID [2022-04-15 10:24:54,560 INFO L290 TraceCheckUtils]: 9: Hoare triple {2965#true} assume true; {2965#true} is VALID [2022-04-15 10:24:54,560 INFO L290 TraceCheckUtils]: 8: Hoare triple {2965#true} assume !(0 == ~cond); {2965#true} is VALID [2022-04-15 10:24:54,560 INFO L290 TraceCheckUtils]: 7: Hoare triple {2965#true} ~cond := #in~cond; {2965#true} is VALID [2022-04-15 10:24:54,560 INFO L272 TraceCheckUtils]: 6: Hoare triple {2965#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {2965#true} is VALID [2022-04-15 10:24:54,560 INFO L290 TraceCheckUtils]: 5: Hoare triple {2965#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {2965#true} is VALID [2022-04-15 10:24:54,560 INFO L272 TraceCheckUtils]: 4: Hoare triple {2965#true} call #t~ret7 := main(); {2965#true} is VALID [2022-04-15 10:24:54,560 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {2965#true} {2965#true} #77#return; {2965#true} is VALID [2022-04-15 10:24:54,561 INFO L290 TraceCheckUtils]: 2: Hoare triple {2965#true} assume true; {2965#true} is VALID [2022-04-15 10:24:54,561 INFO L290 TraceCheckUtils]: 1: Hoare triple {2965#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; {2965#true} is VALID [2022-04-15 10:24:54,561 INFO L272 TraceCheckUtils]: 0: Hoare triple {2965#true} call ULTIMATE.init(); {2965#true} is VALID [2022-04-15 10:24:54,561 INFO L134 CoverageAnalysis]: Checked inductivity of 30 backedges. 0 proven. 0 refuted. 0 times theorem prover too weak. 30 trivial. 0 not checked. [2022-04-15 10:24:54,561 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 10:24:54,561 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [369064135] [2022-04-15 10:24:54,561 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 10:24:54,561 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [548944979] [2022-04-15 10:24:54,561 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [548944979] provided 1 perfect and 1 imperfect interpolant sequences [2022-04-15 10:24:54,561 INFO L184 FreeRefinementEngine]: Found 1 perfect and 1 imperfect interpolant sequences. [2022-04-15 10:24:54,562 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [5] imperfect sequences [8] total 9 [2022-04-15 10:24:55,010 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 10:24:55,010 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [2136082536] [2022-04-15 10:24:55,010 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [2136082536] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 10:24:55,010 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 10:24:55,010 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [12] imperfect sequences [] total 12 [2022-04-15 10:24:55,010 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [4705873] [2022-04-15 10:24:55,011 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 10:24:55,011 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 12 states have (on average 1.6666666666666667) internal successors, (20), 10 states have internal predecessors, (20), 3 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) Word has length 28 [2022-04-15 10:24:55,011 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 10:24:55,011 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 12 states, 12 states have (on average 1.6666666666666667) internal successors, (20), 10 states have internal predecessors, (20), 3 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 10:24:55,035 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 28 edges. 28 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 10:24:55,035 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 12 states [2022-04-15 10:24:55,036 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 10:24:55,036 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 12 interpolants. [2022-04-15 10:24:55,036 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=51, Invalid=189, Unknown=0, NotChecked=0, Total=240 [2022-04-15 10:24:55,036 INFO L87 Difference]: Start difference. First operand 62 states and 80 transitions. Second operand has 12 states, 12 states have (on average 1.6666666666666667) internal successors, (20), 10 states have internal predecessors, (20), 3 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 10:24:56,052 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 10:24:56,052 INFO L93 Difference]: Finished difference Result 73 states and 91 transitions. [2022-04-15 10:24:56,052 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 10 states. [2022-04-15 10:24:56,052 INFO L78 Accepts]: Start accepts. Automaton has has 12 states, 12 states have (on average 1.6666666666666667) internal successors, (20), 10 states have internal predecessors, (20), 3 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) Word has length 28 [2022-04-15 10:24:56,052 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 10:24:56,052 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 12 states have (on average 1.6666666666666667) internal successors, (20), 10 states have internal predecessors, (20), 3 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 10:24:56,053 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 44 transitions. [2022-04-15 10:24:56,053 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 12 states, 12 states have (on average 1.6666666666666667) internal successors, (20), 10 states have internal predecessors, (20), 3 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 10:24:56,054 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 10 states to 10 states and 44 transitions. [2022-04-15 10:24:56,054 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 10 states and 44 transitions. [2022-04-15 10:24:56,126 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 44 edges. 44 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 10:24:56,127 INFO L225 Difference]: With dead ends: 73 [2022-04-15 10:24:56,127 INFO L226 Difference]: Without dead ends: 71 [2022-04-15 10:24:56,128 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 70 GetRequests, 53 SyntacticMatches, 3 SemanticMatches, 14 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 65 ImplicationChecksByTransitivity, 0.5s TimeCoverageRelationStatistics Valid=51, Invalid=189, Unknown=0, NotChecked=0, Total=240 [2022-04-15 10:24:56,128 INFO L913 BasicCegarLoop]: 22 mSDtfsCounter, 12 mSDsluCounter, 86 mSDsCounter, 0 mSdLazyCounter, 163 mSolverCounterSat, 10 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.3s Time, 0 mProtectedPredicate, 0 mProtectedAction, 14 SdHoareTripleChecker+Valid, 108 SdHoareTripleChecker+Invalid, 173 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 10 IncrementalHoareTripleChecker+Valid, 163 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.3s IncrementalHoareTripleChecker+Time [2022-04-15 10:24:56,128 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [14 Valid, 108 Invalid, 173 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [10 Valid, 163 Invalid, 0 Unknown, 0 Unchecked, 0.3s Time] [2022-04-15 10:24:56,128 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 71 states. [2022-04-15 10:24:56,205 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 71 to 66. [2022-04-15 10:24:56,205 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 10:24:56,206 INFO L82 GeneralOperation]: Start isEquivalent. First operand 71 states. Second operand has 66 states, 48 states have (on average 1.3333333333333333) internal successors, (64), 51 states have internal predecessors, (64), 11 states have call successors, (11), 7 states have call predecessors, (11), 6 states have return successors, (8), 7 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-15 10:24:56,206 INFO L74 IsIncluded]: Start isIncluded. First operand 71 states. Second operand has 66 states, 48 states have (on average 1.3333333333333333) internal successors, (64), 51 states have internal predecessors, (64), 11 states have call successors, (11), 7 states have call predecessors, (11), 6 states have return successors, (8), 7 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-15 10:24:56,206 INFO L87 Difference]: Start difference. First operand 71 states. Second operand has 66 states, 48 states have (on average 1.3333333333333333) internal successors, (64), 51 states have internal predecessors, (64), 11 states have call successors, (11), 7 states have call predecessors, (11), 6 states have return successors, (8), 7 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-15 10:24:56,208 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 10:24:56,208 INFO L93 Difference]: Finished difference Result 71 states and 89 transitions. [2022-04-15 10:24:56,208 INFO L276 IsEmpty]: Start isEmpty. Operand 71 states and 89 transitions. [2022-04-15 10:24:56,208 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 10:24:56,208 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 10:24:56,208 INFO L74 IsIncluded]: Start isIncluded. First operand has 66 states, 48 states have (on average 1.3333333333333333) internal successors, (64), 51 states have internal predecessors, (64), 11 states have call successors, (11), 7 states have call predecessors, (11), 6 states have return successors, (8), 7 states have call predecessors, (8), 8 states have call successors, (8) Second operand 71 states. [2022-04-15 10:24:56,209 INFO L87 Difference]: Start difference. First operand has 66 states, 48 states have (on average 1.3333333333333333) internal successors, (64), 51 states have internal predecessors, (64), 11 states have call successors, (11), 7 states have call predecessors, (11), 6 states have return successors, (8), 7 states have call predecessors, (8), 8 states have call successors, (8) Second operand 71 states. [2022-04-15 10:24:56,210 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 10:24:56,210 INFO L93 Difference]: Finished difference Result 71 states and 89 transitions. [2022-04-15 10:24:56,210 INFO L276 IsEmpty]: Start isEmpty. Operand 71 states and 89 transitions. [2022-04-15 10:24:56,211 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 10:24:56,211 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 10:24:56,211 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 10:24:56,211 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 10:24:56,220 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 66 states, 48 states have (on average 1.3333333333333333) internal successors, (64), 51 states have internal predecessors, (64), 11 states have call successors, (11), 7 states have call predecessors, (11), 6 states have return successors, (8), 7 states have call predecessors, (8), 8 states have call successors, (8) [2022-04-15 10:24:56,222 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 66 states to 66 states and 83 transitions. [2022-04-15 10:24:56,222 INFO L78 Accepts]: Start accepts. Automaton has 66 states and 83 transitions. Word has length 28 [2022-04-15 10:24:56,222 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 10:24:56,223 INFO L478 AbstractCegarLoop]: Abstraction has 66 states and 83 transitions. [2022-04-15 10:24:56,223 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 12 states, 12 states have (on average 1.6666666666666667) internal successors, (20), 10 states have internal predecessors, (20), 3 states have call successors, (5), 3 states have call predecessors, (5), 2 states have return successors, (3), 2 states have call predecessors, (3), 2 states have call successors, (3) [2022-04-15 10:24:56,223 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 66 states and 83 transitions. [2022-04-15 10:24:58,432 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 83 edges. 82 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-15 10:24:58,432 INFO L276 IsEmpty]: Start isEmpty. Operand 66 states and 83 transitions. [2022-04-15 10:24:58,433 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 34 [2022-04-15 10:24:58,433 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 10:24:58,433 INFO L499 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] [2022-04-15 10:24:58,449 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (8)] Ended with exit code 0 [2022-04-15 10:24:58,643 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: SelfDestructingSolverStorable7,8 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 10:24:58,643 INFO L403 AbstractCegarLoop]: === Iteration 9 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 10:24:58,644 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 10:24:58,644 INFO L85 PathProgramCache]: Analyzing trace with hash 1680888588, now seen corresponding path program 1 times [2022-04-15 10:24:58,644 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 10:24:58,644 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [1174058425] [2022-04-15 10:25:04,704 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 4 AssignedVariables, -1 ReadonlyVariables, Eigenvalues: {}, 0 SequentialAcceleration, 0 AlternatingAcceleration, 0 QuantifierFreeResult [2022-04-15 10:25:04,704 WARN L91 AcceleratorJordan]: Jordan acceleration failed, because NONLINEAR_UPDATE [2022-04-15 10:25:04,705 INFO L274 tedInterpolationCore]: Could not compute an accelerate. [2022-04-15 10:25:04,705 INFO L85 PathProgramCache]: Analyzing trace with hash 1680888588, now seen corresponding path program 2 times [2022-04-15 10:25:04,705 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 10:25:04,705 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [1953153950] [2022-04-15 10:25:04,705 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 10:25:04,705 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 10:25:04,713 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 10:25:04,713 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [687912532] [2022-04-15 10:25:04,714 INFO L93 rtionOrderModulation]: Changing assertion order to OUTSIDE_LOOP_FIRST1 [2022-04-15 10:25:04,714 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 10:25:04,714 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 10:25:04,714 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-04-15 10:25:04,749 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-04-15 10:25:04,753 INFO L228 tOrderPrioritization]: Assert order OUTSIDE_LOOP_FIRST1 issued 2 check-sat command(s) [2022-04-15 10:25:04,754 INFO L229 tOrderPrioritization]: Conjunction of SSA is unsat [2022-04-15 10:25:04,754 INFO L263 TraceCheckSpWp]: Trace formula consists of 122 conjuncts, 14 conjunts are in the unsatisfiable core [2022-04-15 10:25:04,761 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 10:25:04,762 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 10:25:05,110 INFO L272 TraceCheckUtils]: 0: Hoare triple {3574#true} call ULTIMATE.init(); {3574#true} is VALID [2022-04-15 10:25:05,111 INFO L290 TraceCheckUtils]: 1: Hoare triple {3574#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; {3574#true} is VALID [2022-04-15 10:25:05,111 INFO L290 TraceCheckUtils]: 2: Hoare triple {3574#true} assume true; {3574#true} is VALID [2022-04-15 10:25:05,111 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {3574#true} {3574#true} #77#return; {3574#true} is VALID [2022-04-15 10:25:05,111 INFO L272 TraceCheckUtils]: 4: Hoare triple {3574#true} call #t~ret7 := main(); {3574#true} is VALID [2022-04-15 10:25:05,111 INFO L290 TraceCheckUtils]: 5: Hoare triple {3574#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {3574#true} is VALID [2022-04-15 10:25:05,111 INFO L272 TraceCheckUtils]: 6: Hoare triple {3574#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {3574#true} is VALID [2022-04-15 10:25:05,112 INFO L290 TraceCheckUtils]: 7: Hoare triple {3574#true} ~cond := #in~cond; {3600#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-15 10:25:05,112 INFO L290 TraceCheckUtils]: 8: Hoare triple {3600#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {3604#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-15 10:25:05,112 INFO L290 TraceCheckUtils]: 9: Hoare triple {3604#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {3604#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-15 10:25:05,113 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {3604#(not (= |assume_abort_if_not_#in~cond| 0))} {3574#true} #69#return; {3611#(<= 1 main_~y~0)} is VALID [2022-04-15 10:25:05,113 INFO L290 TraceCheckUtils]: 11: Hoare triple {3611#(<= 1 main_~y~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0; {3615#(<= 1 main_~b~0)} is VALID [2022-04-15 10:25:05,113 INFO L290 TraceCheckUtils]: 12: Hoare triple {3615#(<= 1 main_~b~0)} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3615#(<= 1 main_~b~0)} is VALID [2022-04-15 10:25:05,114 INFO L290 TraceCheckUtils]: 13: Hoare triple {3615#(<= 1 main_~b~0)} assume !!(#t~post6 < 20);havoc #t~post6; {3615#(<= 1 main_~b~0)} is VALID [2022-04-15 10:25:05,114 INFO L272 TraceCheckUtils]: 14: Hoare triple {3615#(<= 1 main_~b~0)} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {3574#true} is VALID [2022-04-15 10:25:05,114 INFO L290 TraceCheckUtils]: 15: Hoare triple {3574#true} ~cond := #in~cond; {3574#true} is VALID [2022-04-15 10:25:05,114 INFO L290 TraceCheckUtils]: 16: Hoare triple {3574#true} assume !(0 == ~cond); {3574#true} is VALID [2022-04-15 10:25:05,114 INFO L290 TraceCheckUtils]: 17: Hoare triple {3574#true} assume true; {3574#true} is VALID [2022-04-15 10:25:05,115 INFO L284 TraceCheckUtils]: 18: Hoare quadruple {3574#true} {3615#(<= 1 main_~b~0)} #71#return; {3615#(<= 1 main_~b~0)} is VALID [2022-04-15 10:25:05,115 INFO L290 TraceCheckUtils]: 19: Hoare triple {3615#(<= 1 main_~b~0)} assume !!(0 != ~a~0 && 0 != ~b~0); {3640#(and (not (= main_~a~0 0)) (<= 1 main_~b~0))} is VALID [2022-04-15 10:25:05,116 INFO L290 TraceCheckUtils]: 20: Hoare triple {3640#(and (not (= main_~a~0 0)) (<= 1 main_~b~0))} assume 0 == (if ~a~0 < 0 && 0 != ~a~0 % 2 then ~a~0 % 2 - 2 else ~a~0 % 2) && 0 == (if ~b~0 < 0 && 0 != ~b~0 % 2 then ~b~0 % 2 - 2 else ~b~0 % 2);~a~0 := (if ~a~0 < 0 && 0 != ~a~0 % 2 then 1 + ~a~0 / 2 else ~a~0 / 2);~b~0 := (if ~b~0 < 0 && 0 != ~b~0 % 2 then 1 + ~b~0 / 2 else ~b~0 / 2);~p~0 := 4 * ~p~0; {3640#(and (not (= main_~a~0 0)) (<= 1 main_~b~0))} is VALID [2022-04-15 10:25:05,116 INFO L290 TraceCheckUtils]: 21: Hoare triple {3640#(and (not (= main_~a~0 0)) (<= 1 main_~b~0))} #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; {3640#(and (not (= main_~a~0 0)) (<= 1 main_~b~0))} is VALID [2022-04-15 10:25:05,117 INFO L290 TraceCheckUtils]: 22: Hoare triple {3640#(and (not (= main_~a~0 0)) (<= 1 main_~b~0))} assume !!(#t~post6 < 20);havoc #t~post6; {3640#(and (not (= main_~a~0 0)) (<= 1 main_~b~0))} is VALID [2022-04-15 10:25:05,117 INFO L272 TraceCheckUtils]: 23: Hoare triple {3640#(and (not (= main_~a~0 0)) (<= 1 main_~b~0))} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {3574#true} is VALID [2022-04-15 10:25:05,117 INFO L290 TraceCheckUtils]: 24: Hoare triple {3574#true} ~cond := #in~cond; {3574#true} is VALID [2022-04-15 10:25:05,117 INFO L290 TraceCheckUtils]: 25: Hoare triple {3574#true} assume !(0 == ~cond); {3574#true} is VALID [2022-04-15 10:25:05,117 INFO L290 TraceCheckUtils]: 26: Hoare triple {3574#true} assume true; {3574#true} is VALID [2022-04-15 10:25:05,118 INFO L284 TraceCheckUtils]: 27: Hoare quadruple {3574#true} {3640#(and (not (= main_~a~0 0)) (<= 1 main_~b~0))} #71#return; {3640#(and (not (= main_~a~0 0)) (<= 1 main_~b~0))} is VALID [2022-04-15 10:25:05,118 INFO L290 TraceCheckUtils]: 28: Hoare triple {3640#(and (not (= main_~a~0 0)) (<= 1 main_~b~0))} assume !(0 != ~a~0 && 0 != ~b~0); {3575#false} is VALID [2022-04-15 10:25:05,118 INFO L272 TraceCheckUtils]: 29: Hoare triple {3575#false} call __VERIFIER_assert((if ~q~0 == ~x~0 * ~y~0 then 1 else 0)); {3575#false} is VALID [2022-04-15 10:25:05,118 INFO L290 TraceCheckUtils]: 30: Hoare triple {3575#false} ~cond := #in~cond; {3575#false} is VALID [2022-04-15 10:25:05,118 INFO L290 TraceCheckUtils]: 31: Hoare triple {3575#false} assume 0 == ~cond; {3575#false} is VALID [2022-04-15 10:25:05,118 INFO L290 TraceCheckUtils]: 32: Hoare triple {3575#false} assume !false; {3575#false} is VALID [2022-04-15 10:25:05,119 INFO L134 CoverageAnalysis]: Checked inductivity of 12 backedges. 8 proven. 0 refuted. 0 times theorem prover too weak. 4 trivial. 0 not checked. [2022-04-15 10:25:05,119 INFO L324 TraceCheckSpWp]: Omiting computation of backward sequence because forward sequence was already perfect [2022-04-15 10:25:05,119 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 10:25:05,119 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [1953153950] [2022-04-15 10:25:05,119 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 10:25:05,119 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [687912532] [2022-04-15 10:25:05,119 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [687912532] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 10:25:05,119 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 10:25:05,119 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2022-04-15 10:25:05,119 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 10:25:05,119 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [1174058425] [2022-04-15 10:25:05,119 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [1174058425] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 10:25:05,120 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 10:25:05,120 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [7] imperfect sequences [] total 7 [2022-04-15 10:25:05,120 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [787760045] [2022-04-15 10:25:05,120 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 10:25:05,120 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 2.857142857142857) internal successors, (20), 6 states have internal predecessors, (20), 4 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) Word has length 33 [2022-04-15 10:25:05,120 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 10:25:05,120 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 7 states, 7 states have (on average 2.857142857142857) internal successors, (20), 6 states have internal predecessors, (20), 4 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-15 10:25:05,137 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 30 edges. 30 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 10:25:05,138 INFO L554 AbstractCegarLoop]: INTERPOLANT automaton has 7 states [2022-04-15 10:25:05,138 INFO L100 FreeRefinementEngine]: Using predicate unifier PredicateUnifier provided by strategy ACCELERATED_INTERPOLATION [2022-04-15 10:25:05,138 INFO L143 InterpolantAutomaton]: Constructing interpolant automaton starting with 7 interpolants. [2022-04-15 10:25:05,138 INFO L145 InterpolantAutomaton]: CoverageRelationStatistics Valid=12, Invalid=30, Unknown=0, NotChecked=0, Total=42 [2022-04-15 10:25:05,138 INFO L87 Difference]: Start difference. First operand 66 states and 83 transitions. Second operand has 7 states, 7 states have (on average 2.857142857142857) internal successors, (20), 6 states have internal predecessors, (20), 4 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-15 10:25:05,432 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 10:25:05,432 INFO L93 Difference]: Finished difference Result 82 states and 104 transitions. [2022-04-15 10:25:05,432 INFO L141 InterpolantAutomaton]: Switched to read-only mode: deterministic interpolant automaton has 7 states. [2022-04-15 10:25:05,432 INFO L78 Accepts]: Start accepts. Automaton has has 7 states, 7 states have (on average 2.857142857142857) internal successors, (20), 6 states have internal predecessors, (20), 4 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) Word has length 33 [2022-04-15 10:25:05,432 INFO L84 Accepts]: Finished accepts. some prefix is accepted. [2022-04-15 10:25:05,432 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 2.857142857142857) internal successors, (20), 6 states have internal predecessors, (20), 4 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-15 10:25:05,439 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 65 transitions. [2022-04-15 10:25:05,439 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 7 states, 7 states have (on average 2.857142857142857) internal successors, (20), 6 states have internal predecessors, (20), 4 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-15 10:25:05,442 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 7 states to 7 states and 65 transitions. [2022-04-15 10:25:05,443 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 7 states and 65 transitions. [2022-04-15 10:25:05,474 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 65 edges. 65 inductive. 0 not inductive. 0 times theorem prover too weak to decide inductivity. [2022-04-15 10:25:05,477 INFO L225 Difference]: With dead ends: 82 [2022-04-15 10:25:05,477 INFO L226 Difference]: Without dead ends: 75 [2022-04-15 10:25:05,477 INFO L912 BasicCegarLoop]: 0 DeclaredPredicates, 35 GetRequests, 26 SyntacticMatches, 1 SemanticMatches, 8 ConstructedPredicates, 0 IntricatePredicates, 0 DeprecatedPredicates, 3 ImplicationChecksByTransitivity, 0.0s TimeCoverageRelationStatistics Valid=26, Invalid=64, Unknown=0, NotChecked=0, Total=90 [2022-04-15 10:25:05,479 INFO L913 BasicCegarLoop]: 30 mSDtfsCounter, 28 mSDsluCounter, 92 mSDsCounter, 0 mSdLazyCounter, 90 mSolverCounterSat, 12 mSolverCounterUnsat, 0 mSolverCounterUnknown, 0 mSolverCounterNotChecked, 0.1s Time, 0 mProtectedPredicate, 0 mProtectedAction, 30 SdHoareTripleChecker+Valid, 122 SdHoareTripleChecker+Invalid, 102 SdHoareTripleChecker+Unknown, 0 SdHoareTripleChecker+Unchecked, 0.0s SdHoareTripleChecker+Time, 12 IncrementalHoareTripleChecker+Valid, 90 IncrementalHoareTripleChecker+Invalid, 0 IncrementalHoareTripleChecker+Unknown, 0 IncrementalHoareTripleChecker+Unchecked, 0.1s IncrementalHoareTripleChecker+Time [2022-04-15 10:25:05,479 INFO L914 BasicCegarLoop]: SdHoareTripleChecker [30 Valid, 122 Invalid, 102 Unknown, 0 Unchecked, 0.0s Time], IncrementalHoareTripleChecker [12 Valid, 90 Invalid, 0 Unknown, 0 Unchecked, 0.1s Time] [2022-04-15 10:25:05,479 INFO L82 GeneralOperation]: Start minimizeSevpa. Operand 75 states. [2022-04-15 10:25:05,535 INFO L88 GeneralOperation]: Finished minimizeSevpa. Reduced states from 75 to 70. [2022-04-15 10:25:05,535 INFO L214 AbstractMinimizeNwa]: Start testing correctness of minimizeSevpa [2022-04-15 10:25:05,541 INFO L82 GeneralOperation]: Start isEquivalent. First operand 75 states. Second operand has 70 states, 51 states have (on average 1.3333333333333333) internal successors, (68), 54 states have internal predecessors, (68), 12 states have call successors, (12), 7 states have call predecessors, (12), 6 states have return successors, (9), 8 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-15 10:25:05,542 INFO L74 IsIncluded]: Start isIncluded. First operand 75 states. Second operand has 70 states, 51 states have (on average 1.3333333333333333) internal successors, (68), 54 states have internal predecessors, (68), 12 states have call successors, (12), 7 states have call predecessors, (12), 6 states have return successors, (9), 8 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-15 10:25:05,542 INFO L87 Difference]: Start difference. First operand 75 states. Second operand has 70 states, 51 states have (on average 1.3333333333333333) internal successors, (68), 54 states have internal predecessors, (68), 12 states have call successors, (12), 7 states have call predecessors, (12), 6 states have return successors, (9), 8 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-15 10:25:05,545 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 10:25:05,545 INFO L93 Difference]: Finished difference Result 75 states and 97 transitions. [2022-04-15 10:25:05,545 INFO L276 IsEmpty]: Start isEmpty. Operand 75 states and 97 transitions. [2022-04-15 10:25:05,545 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 10:25:05,545 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 10:25:05,546 INFO L74 IsIncluded]: Start isIncluded. First operand has 70 states, 51 states have (on average 1.3333333333333333) internal successors, (68), 54 states have internal predecessors, (68), 12 states have call successors, (12), 7 states have call predecessors, (12), 6 states have return successors, (9), 8 states have call predecessors, (9), 9 states have call successors, (9) Second operand 75 states. [2022-04-15 10:25:05,546 INFO L87 Difference]: Start difference. First operand has 70 states, 51 states have (on average 1.3333333333333333) internal successors, (68), 54 states have internal predecessors, (68), 12 states have call successors, (12), 7 states have call predecessors, (12), 6 states have return successors, (9), 8 states have call predecessors, (9), 9 states have call successors, (9) Second operand 75 states. [2022-04-15 10:25:05,550 INFO L144 Difference]: Subtrahend was deterministic. Have not used determinization. [2022-04-15 10:25:05,550 INFO L93 Difference]: Finished difference Result 75 states and 97 transitions. [2022-04-15 10:25:05,550 INFO L276 IsEmpty]: Start isEmpty. Operand 75 states and 97 transitions. [2022-04-15 10:25:05,551 INFO L282 IsEmpty]: Finished isEmpty. No accepting run. [2022-04-15 10:25:05,551 INFO L83 IsIncluded]: Finished isIncluded. Language is included [2022-04-15 10:25:05,551 INFO L88 GeneralOperation]: Finished isEquivalent. [2022-04-15 10:25:05,551 INFO L221 AbstractMinimizeNwa]: Finished testing correctness of minimizeSevpa [2022-04-15 10:25:05,551 INFO L82 GeneralOperation]: Start removeUnreachable. Operand has 70 states, 51 states have (on average 1.3333333333333333) internal successors, (68), 54 states have internal predecessors, (68), 12 states have call successors, (12), 7 states have call predecessors, (12), 6 states have return successors, (9), 8 states have call predecessors, (9), 9 states have call successors, (9) [2022-04-15 10:25:05,552 INFO L88 GeneralOperation]: Finished removeUnreachable. Reduced from 70 states to 70 states and 89 transitions. [2022-04-15 10:25:05,552 INFO L78 Accepts]: Start accepts. Automaton has 70 states and 89 transitions. Word has length 33 [2022-04-15 10:25:05,555 INFO L84 Accepts]: Finished accepts. word is rejected. [2022-04-15 10:25:05,555 INFO L478 AbstractCegarLoop]: Abstraction has 70 states and 89 transitions. [2022-04-15 10:25:05,555 INFO L479 AbstractCegarLoop]: INTERPOLANT automaton has has 7 states, 7 states have (on average 2.857142857142857) internal successors, (20), 6 states have internal predecessors, (20), 4 states have call successors, (6), 2 states have call predecessors, (6), 2 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-15 10:25:05,555 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with 70 states and 89 transitions. [2022-04-15 10:25:07,743 INFO L122 InductivityCheck]: Floyd-Hoare automaton has 89 edges. 88 inductive. 0 not inductive. 1 times theorem prover too weak to decide inductivity. [2022-04-15 10:25:07,743 INFO L276 IsEmpty]: Start isEmpty. Operand 70 states and 89 transitions. [2022-04-15 10:25:07,745 INFO L282 IsEmpty]: Finished isEmpty. Found accepting run of length 36 [2022-04-15 10:25:07,745 INFO L491 BasicCegarLoop]: Found error trace [2022-04-15 10:25:07,745 INFO L499 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] [2022-04-15 10:25:07,761 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true (9)] Ended with exit code 0 [2022-04-15 10:25:07,959 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 9 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable8 [2022-04-15 10:25:07,960 INFO L403 AbstractCegarLoop]: === Iteration 10 === Targeting __VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION === [__VERIFIER_assertErr0ASSERT_VIOLATIONERROR_FUNCTION] === [2022-04-15 10:25:07,960 INFO L144 PredicateUnifier]: Initialized classic predicate unifier [2022-04-15 10:25:07,960 INFO L85 PathProgramCache]: Analyzing trace with hash 368374993, now seen corresponding path program 1 times [2022-04-15 10:25:07,960 INFO L118 FreeRefinementEngine]: Executing refinement strategy ACCELERATED_INTERPOLATION [2022-04-15 10:25:07,960 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleAcceleratedInterpolation [778435364] [2022-04-15 10:25:14,098 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 3 AssignedVariables, 1 ReadonlyVariables, Eigenvalues: {1={1=1, 2=2}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-15 10:25:16,375 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 3 AssignedVariables, 1 ReadonlyVariables, Eigenvalues: {1={1=1, 2=2}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-15 10:25:16,428 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 3 AssignedVariables, 1 ReadonlyVariables, Eigenvalues: {1={1=1, 2=2}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-15 10:25:16,477 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 3 AssignedVariables, 1 ReadonlyVariables, Eigenvalues: {1={1=1, 2=2}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-15 10:25:18,899 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 3 AssignedVariables, 1 ReadonlyVariables, Eigenvalues: {1={1=1, 2=2}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-15 10:25:18,939 INFO L89 AcceleratorJordan]: Jordan loop acceleration statistics: 1 HavocedVariables, 3 AssignedVariables, 1 ReadonlyVariables, Eigenvalues: {1={1=1, 2=2}}, 1 SequentialAcceleration, 0 AlternatingAcceleration, 1 QuantifierFreeResult [2022-04-15 10:25:18,940 INFO L271 tedInterpolationCore]: Starting analysis with loop acceleration approximation PRECISE [2022-04-15 10:25:18,942 INFO L85 PathProgramCache]: Analyzing trace with hash -1745517901, now seen corresponding path program 1 times [2022-04-15 10:25:18,942 INFO L118 FreeRefinementEngine]: Executing refinement strategy CAMEL [2022-04-15 10:25:18,942 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleSmtInterpolCraig [444516871] [2022-04-15 10:25:18,942 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 10:25:18,942 INFO L127 SolverBuilder]: Constructing new instance of SMTInterpol with explicit timeout -1 ms and remaining time -1 ms [2022-04-15 10:25:18,963 ERROR L245 FreeRefinementEngine]: Caught known exception: Unsupported non-linear arithmetic [2022-04-15 10:25:18,964 INFO L333 FreeRefinementEngine]: Using trace check IpTcStrategyModuleZ3 [225294247] [2022-04-15 10:25:18,964 INFO L95 rtionOrderModulation]: Keeping assertion order NOT_INCREMENTALLY [2022-04-15 10:25:18,964 INFO L173 SolverBuilder]: Constructing external solver with command: z3 -smt2 -in SMTLIB2_COMPLIANT=true [2022-04-15 10:25:18,964 INFO L189 MonitoredProcess]: No working directory specified, using /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 [2022-04-15 10:25:18,965 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-04-15 10:25:18,966 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-04-15 10:25:19,012 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 10:25:19,013 INFO L263 TraceCheckSpWp]: Trace formula consists of 135 conjuncts, 21 conjunts are in the unsatisfiable core [2022-04-15 10:25:19,049 INFO L136 AnnotateAndAsserter]: Conjunction of SSA is unsat [2022-04-15 10:25:19,051 INFO L286 TraceCheckSpWp]: Computing forward predicates... [2022-04-15 10:25:30,384 INFO L272 TraceCheckUtils]: 0: Hoare triple {4139#true} call ULTIMATE.init(); {4139#true} is VALID [2022-04-15 10:25:30,384 INFO L290 TraceCheckUtils]: 1: Hoare triple {4139#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; {4139#true} is VALID [2022-04-15 10:25:30,384 INFO L290 TraceCheckUtils]: 2: Hoare triple {4139#true} assume true; {4139#true} is VALID [2022-04-15 10:25:30,384 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4139#true} {4139#true} #77#return; {4139#true} is VALID [2022-04-15 10:25:30,385 INFO L272 TraceCheckUtils]: 4: Hoare triple {4139#true} call #t~ret7 := main(); {4139#true} is VALID [2022-04-15 10:25:30,385 INFO L290 TraceCheckUtils]: 5: Hoare triple {4139#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {4139#true} is VALID [2022-04-15 10:25:30,385 INFO L272 TraceCheckUtils]: 6: Hoare triple {4139#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {4139#true} is VALID [2022-04-15 10:25:30,385 INFO L290 TraceCheckUtils]: 7: Hoare triple {4139#true} ~cond := #in~cond; {4165#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} is VALID [2022-04-15 10:25:30,385 INFO L290 TraceCheckUtils]: 8: Hoare triple {4165#(= assume_abort_if_not_~cond |assume_abort_if_not_#in~cond|)} assume !(0 == ~cond); {4169#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-15 10:25:30,386 INFO L290 TraceCheckUtils]: 9: Hoare triple {4169#(not (= |assume_abort_if_not_#in~cond| 0))} assume true; {4169#(not (= |assume_abort_if_not_#in~cond| 0))} is VALID [2022-04-15 10:25:30,386 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {4169#(not (= |assume_abort_if_not_#in~cond| 0))} {4139#true} #69#return; {4176#(<= 1 main_~y~0)} is VALID [2022-04-15 10:25:30,387 INFO L290 TraceCheckUtils]: 11: Hoare triple {4176#(<= 1 main_~y~0)} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0; {4180#(and (<= main_~y~0 main_~b~0) (<= 1 main_~y~0))} is VALID [2022-04-15 10:25:30,387 INFO L290 TraceCheckUtils]: 12: Hoare triple {4180#(and (<= main_~y~0 main_~b~0) (<= 1 main_~y~0))} [93] L46-2-->L33-1_primed: Formula: (and (= |v_main_#t~post6_53| |v_main_#t~post6_51|) (= v_main_~q~0_71 v_main_~q~0_70) (= v_main_~b~0_53 v_main_~b~0_52) (= v_~counter~0_69 v_~counter~0_68)) InVars {main_~q~0=v_main_~q~0_71, ~counter~0=v_~counter~0_69, main_~b~0=v_main_~b~0_53, main_#t~post6=|v_main_#t~post6_53|} OutVars{main_~q~0=v_main_~q~0_70, ~counter~0=v_~counter~0_68, main_~b~0=v_main_~b~0_52, main_#t~post6=|v_main_#t~post6_51|} AuxVars[] AssignedVars[main_~q~0, ~counter~0, main_~b~0, main_#t~post6] {4180#(and (<= main_~y~0 main_~b~0) (<= 1 main_~y~0))} is VALID [2022-04-15 10:25:30,387 INFO L290 TraceCheckUtils]: 13: Hoare triple {4180#(and (<= main_~y~0 main_~b~0) (<= 1 main_~y~0))} [94] L33-1_primed-->L46-2: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4180#(and (<= main_~y~0 main_~b~0) (<= 1 main_~y~0))} is VALID [2022-04-15 10:25:30,389 INFO L290 TraceCheckUtils]: 14: Hoare triple {4180#(and (<= main_~y~0 main_~b~0) (<= 1 main_~y~0))} [95] L46-2-->L33-1_primed: Formula: (let ((.cse9 (+ v_main_~q~0_71 (* v_main_~p~0_43 v_main_~a~0_82 v_main_~b~0_53)))) (let ((.cse0 (= v_main_~q~0_71 v_main_~q~0_70)) (.cse6 (= v_main_~b~0_53 v_main_~b~0_52)) (.cse7 (= |v_main_#t~post6_56| |v_main_#t~post6_51|)) (.cse8 (= v_~counter~0_69 v_~counter~0_68)) (.cse4 (= .cse9 (* v_main_~x~0_34 v_main_~y~0_38))) (.cse1 (<= 0 v_main_~b~0_53)) (.cse5 (= (mod v_main_~a~0_82 2) 0)) (.cse3 (< v_~counter~0_69 20)) (.cse2 (= 0 v_main_~a~0_82))) (or (and .cse0 (or (not .cse1) .cse2 (not .cse3) (not (= (mod v_main_~b~0_53 2) 1)) (not .cse4) (not .cse5)) .cse6 .cse7 .cse8) (and (= v_main_~x~0_34 v_main_~x~0_34) .cse0 (= v_main_~y~0_38 v_main_~y~0_38) (= v_main_~p~0_43 v_main_~p~0_43) (= v_main_~a~0_82 v_main_~a~0_82) .cse6 .cse7 .cse8) (and (= (+ v_~counter~0_68 v_main_~b~0_52) (+ v_~counter~0_69 v_main_~b~0_53)) .cse4 .cse1 (< v_main_~b~0_52 v_main_~b~0_53) .cse5 (<= (+ (div v_main_~b~0_52 (- 2)) v_main_~b~0_53) (+ (div (+ (- 1) v_main_~b~0_53) 2) 1)) .cse3 (not .cse2) (= .cse9 (+ v_main_~q~0_70 (* v_main_~p~0_43 v_main_~a~0_82 v_main_~b~0_52))))))) InVars {main_~q~0=v_main_~q~0_71, ~counter~0=v_~counter~0_69, main_~x~0=v_main_~x~0_34, main_~y~0=v_main_~y~0_38, main_~b~0=v_main_~b~0_53, main_~p~0=v_main_~p~0_43, main_#t~post6=|v_main_#t~post6_56|, main_~a~0=v_main_~a~0_82} OutVars{main_~q~0=v_main_~q~0_70, ~counter~0=v_~counter~0_68, main_~x~0=v_main_~x~0_34, main_~y~0=v_main_~y~0_38, main_~b~0=v_main_~b~0_52, main_~p~0=v_main_~p~0_43, main_#t~post6=|v_main_#t~post6_51|, main_~a~0=v_main_~a~0_82} AuxVars[] AssignedVars[main_~q~0, ~counter~0, main_~b~0, main_#t~post6] {4190#(and (or (and (= (mod main_~a~0 2) 0) (<= (+ main_~y~0 (* (div main_~b~0 (- 2)) 2)) 1) (not (= main_~a~0 0))) (<= main_~y~0 main_~b~0)) (<= 1 main_~y~0))} is VALID [2022-04-15 10:25:30,390 INFO L290 TraceCheckUtils]: 15: Hoare triple {4190#(and (or (and (= (mod main_~a~0 2) 0) (<= (+ main_~y~0 (* (div main_~b~0 (- 2)) 2)) 1) (not (= main_~a~0 0))) (<= main_~y~0 main_~b~0)) (<= 1 main_~y~0))} [96] L33-1_primed-->L46-2: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4190#(and (or (and (= (mod main_~a~0 2) 0) (<= (+ main_~y~0 (* (div main_~b~0 (- 2)) 2)) 1) (not (= main_~a~0 0))) (<= main_~y~0 main_~b~0)) (<= 1 main_~y~0))} is VALID [2022-04-15 10:25:30,390 INFO L290 TraceCheckUtils]: 16: Hoare triple {4190#(and (or (and (= (mod main_~a~0 2) 0) (<= (+ main_~y~0 (* (div main_~b~0 (- 2)) 2)) 1) (not (= main_~a~0 0))) (<= main_~y~0 main_~b~0)) (<= 1 main_~y~0))} [97] L46-2-->L33-1_primed: Formula: (and (= |v_main_#t~post6_59| |v_main_#t~post6_51|) (= v_main_~q~0_71 v_main_~q~0_70) (= v_main_~b~0_53 v_main_~b~0_52) (= v_~counter~0_69 v_~counter~0_68)) InVars {main_~q~0=v_main_~q~0_71, ~counter~0=v_~counter~0_69, main_~b~0=v_main_~b~0_53, main_#t~post6=|v_main_#t~post6_59|} OutVars{main_~q~0=v_main_~q~0_70, ~counter~0=v_~counter~0_68, main_~b~0=v_main_~b~0_52, main_#t~post6=|v_main_#t~post6_51|} AuxVars[] AssignedVars[main_~q~0, ~counter~0, main_~b~0, main_#t~post6] {4190#(and (or (and (= (mod main_~a~0 2) 0) (<= (+ main_~y~0 (* (div main_~b~0 (- 2)) 2)) 1) (not (= main_~a~0 0))) (<= main_~y~0 main_~b~0)) (<= 1 main_~y~0))} is VALID [2022-04-15 10:25:30,391 INFO L290 TraceCheckUtils]: 17: Hoare triple {4190#(and (or (and (= (mod main_~a~0 2) 0) (<= (+ main_~y~0 (* (div main_~b~0 (- 2)) 2)) 1) (not (= main_~a~0 0))) (<= main_~y~0 main_~b~0)) (<= 1 main_~y~0))} [98] L33-1_primed-->L46-2: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4190#(and (or (and (= (mod main_~a~0 2) 0) (<= (+ main_~y~0 (* (div main_~b~0 (- 2)) 2)) 1) (not (= main_~a~0 0))) (<= main_~y~0 main_~b~0)) (<= 1 main_~y~0))} is VALID [2022-04-15 10:25:30,391 INFO L290 TraceCheckUtils]: 18: Hoare triple {4190#(and (or (and (= (mod main_~a~0 2) 0) (<= (+ main_~y~0 (* (div main_~b~0 (- 2)) 2)) 1) (not (= main_~a~0 0))) (<= main_~y~0 main_~b~0)) (<= 1 main_~y~0))} [99] L46-2-->L33-1_primed: Formula: (and (= v_main_~q~0_71 v_main_~q~0_70) (= |v_main_#t~post6_62| |v_main_#t~post6_51|) (= v_main_~b~0_53 v_main_~b~0_52) (= v_~counter~0_69 v_~counter~0_68)) InVars {main_~q~0=v_main_~q~0_71, ~counter~0=v_~counter~0_69, main_~b~0=v_main_~b~0_53, main_#t~post6=|v_main_#t~post6_62|} OutVars{main_~q~0=v_main_~q~0_70, ~counter~0=v_~counter~0_68, main_~b~0=v_main_~b~0_52, main_#t~post6=|v_main_#t~post6_51|} AuxVars[] AssignedVars[main_~q~0, ~counter~0, main_~b~0, main_#t~post6] {4190#(and (or (and (= (mod main_~a~0 2) 0) (<= (+ main_~y~0 (* (div main_~b~0 (- 2)) 2)) 1) (not (= main_~a~0 0))) (<= main_~y~0 main_~b~0)) (<= 1 main_~y~0))} is VALID [2022-04-15 10:25:30,392 INFO L290 TraceCheckUtils]: 19: Hoare triple {4190#(and (or (and (= (mod main_~a~0 2) 0) (<= (+ main_~y~0 (* (div main_~b~0 (- 2)) 2)) 1) (not (= main_~a~0 0))) (<= main_~y~0 main_~b~0)) (<= 1 main_~y~0))} [100] L33-1_primed-->L46-2: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4190#(and (or (and (= (mod main_~a~0 2) 0) (<= (+ main_~y~0 (* (div main_~b~0 (- 2)) 2)) 1) (not (= main_~a~0 0))) (<= main_~y~0 main_~b~0)) (<= 1 main_~y~0))} is VALID [2022-04-15 10:25:30,394 INFO L290 TraceCheckUtils]: 20: Hoare triple {4190#(and (or (and (= (mod main_~a~0 2) 0) (<= (+ main_~y~0 (* (div main_~b~0 (- 2)) 2)) 1) (not (= main_~a~0 0))) (<= main_~y~0 main_~b~0)) (<= 1 main_~y~0))} [101] L46-2-->L33-1_primed: Formula: (let ((.cse5 (+ v_main_~q~0_71 (* v_main_~p~0_43 v_main_~a~0_82 v_main_~b~0_53)))) (let ((.cse1 (<= 0 v_main_~b~0_53)) (.cse4 (= 0 v_main_~a~0_82)) (.cse3 (< v_~counter~0_69 20)) (.cse0 (= .cse5 (* v_main_~x~0_34 v_main_~y~0_38))) (.cse2 (= (mod v_main_~a~0_82 2) 0)) (.cse6 (= |v_main_#t~post6_65| |v_main_#t~post6_51|)) (.cse7 (= v_main_~q~0_71 v_main_~q~0_70)) (.cse8 (= v_main_~b~0_53 v_main_~b~0_52)) (.cse9 (= v_~counter~0_69 v_~counter~0_68))) (or (and (= (+ v_~counter~0_68 v_main_~b~0_52) (+ v_~counter~0_69 v_main_~b~0_53)) .cse0 .cse1 (< v_main_~b~0_52 v_main_~b~0_53) .cse2 (<= (+ (div v_main_~b~0_52 (- 2)) v_main_~b~0_53) (+ (div (+ (- 1) v_main_~b~0_53) 2) 1)) .cse3 (not .cse4) (= .cse5 (+ v_main_~q~0_70 (* v_main_~p~0_43 v_main_~a~0_82 v_main_~b~0_52)))) (and .cse6 .cse7 (or (not .cse1) .cse4 (not .cse3) (not (= (mod v_main_~b~0_53 2) 1)) (not .cse0) (not .cse2)) .cse8 .cse9) (and .cse6 (= v_main_~x~0_34 v_main_~x~0_34) .cse7 (= v_main_~y~0_38 v_main_~y~0_38) (= v_main_~p~0_43 v_main_~p~0_43) (= v_main_~a~0_82 v_main_~a~0_82) .cse8 .cse9)))) InVars {main_~q~0=v_main_~q~0_71, ~counter~0=v_~counter~0_69, main_~x~0=v_main_~x~0_34, main_~y~0=v_main_~y~0_38, main_~b~0=v_main_~b~0_53, main_~p~0=v_main_~p~0_43, main_#t~post6=|v_main_#t~post6_65|, main_~a~0=v_main_~a~0_82} OutVars{main_~q~0=v_main_~q~0_70, ~counter~0=v_~counter~0_68, main_~x~0=v_main_~x~0_34, main_~y~0=v_main_~y~0_38, main_~b~0=v_main_~b~0_52, main_~p~0=v_main_~p~0_43, main_#t~post6=|v_main_#t~post6_51|, main_~a~0=v_main_~a~0_82} AuxVars[] AssignedVars[main_~q~0, ~counter~0, main_~b~0, main_#t~post6] {4190#(and (or (and (= (mod main_~a~0 2) 0) (<= (+ main_~y~0 (* (div main_~b~0 (- 2)) 2)) 1) (not (= main_~a~0 0))) (<= main_~y~0 main_~b~0)) (<= 1 main_~y~0))} is VALID [2022-04-15 10:25:30,394 INFO L290 TraceCheckUtils]: 21: Hoare triple {4190#(and (or (and (= (mod main_~a~0 2) 0) (<= (+ main_~y~0 (* (div main_~b~0 (- 2)) 2)) 1) (not (= main_~a~0 0))) (<= main_~y~0 main_~b~0)) (<= 1 main_~y~0))} [102] L33-1_primed-->L46-2: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4190#(and (or (and (= (mod main_~a~0 2) 0) (<= (+ main_~y~0 (* (div main_~b~0 (- 2)) 2)) 1) (not (= main_~a~0 0))) (<= main_~y~0 main_~b~0)) (<= 1 main_~y~0))} is VALID [2022-04-15 10:25:30,395 INFO L290 TraceCheckUtils]: 22: Hoare triple {4190#(and (or (and (= (mod main_~a~0 2) 0) (<= (+ main_~y~0 (* (div main_~b~0 (- 2)) 2)) 1) (not (= main_~a~0 0))) (<= main_~y~0 main_~b~0)) (<= 1 main_~y~0))} [103] L46-2-->L33-1_primed: Formula: (and (= v_main_~q~0_71 v_main_~q~0_70) (= |v_main_#t~post6_68| |v_main_#t~post6_51|) (= v_main_~b~0_53 v_main_~b~0_52) (= v_~counter~0_69 v_~counter~0_68)) InVars {main_~q~0=v_main_~q~0_71, ~counter~0=v_~counter~0_69, main_~b~0=v_main_~b~0_53, main_#t~post6=|v_main_#t~post6_68|} OutVars{main_~q~0=v_main_~q~0_70, ~counter~0=v_~counter~0_68, main_~b~0=v_main_~b~0_52, main_#t~post6=|v_main_#t~post6_51|} AuxVars[] AssignedVars[main_~q~0, ~counter~0, main_~b~0, main_#t~post6] {4190#(and (or (and (= (mod main_~a~0 2) 0) (<= (+ main_~y~0 (* (div main_~b~0 (- 2)) 2)) 1) (not (= main_~a~0 0))) (<= main_~y~0 main_~b~0)) (<= 1 main_~y~0))} is VALID [2022-04-15 10:25:30,395 INFO L290 TraceCheckUtils]: 23: Hoare triple {4190#(and (or (and (= (mod main_~a~0 2) 0) (<= (+ main_~y~0 (* (div main_~b~0 (- 2)) 2)) 1) (not (= main_~a~0 0))) (<= main_~y~0 main_~b~0)) (<= 1 main_~y~0))} [92] L33-1_primed-->L33-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {4190#(and (or (and (= (mod main_~a~0 2) 0) (<= (+ main_~y~0 (* (div main_~b~0 (- 2)) 2)) 1) (not (= main_~a~0 0))) (<= main_~y~0 main_~b~0)) (<= 1 main_~y~0))} is VALID [2022-04-15 10:25:30,396 INFO L290 TraceCheckUtils]: 24: Hoare triple {4190#(and (or (and (= (mod main_~a~0 2) 0) (<= (+ main_~y~0 (* (div main_~b~0 (- 2)) 2)) 1) (not (= main_~a~0 0))) (<= main_~y~0 main_~b~0)) (<= 1 main_~y~0))} assume !!(#t~post6 < 20);havoc #t~post6; {4190#(and (or (and (= (mod main_~a~0 2) 0) (<= (+ main_~y~0 (* (div main_~b~0 (- 2)) 2)) 1) (not (= main_~a~0 0))) (<= main_~y~0 main_~b~0)) (<= 1 main_~y~0))} is VALID [2022-04-15 10:25:30,396 INFO L272 TraceCheckUtils]: 25: Hoare triple {4190#(and (or (and (= (mod main_~a~0 2) 0) (<= (+ main_~y~0 (* (div main_~b~0 (- 2)) 2)) 1) (not (= main_~a~0 0))) (<= main_~y~0 main_~b~0)) (<= 1 main_~y~0))} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {4139#true} is VALID [2022-04-15 10:25:30,396 INFO L290 TraceCheckUtils]: 26: Hoare triple {4139#true} ~cond := #in~cond; {4227#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} is VALID [2022-04-15 10:25:30,397 INFO L290 TraceCheckUtils]: 27: Hoare triple {4227#(= |__VERIFIER_assert_#in~cond| __VERIFIER_assert_~cond)} assume !(0 == ~cond); {4231#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 10:25:30,397 INFO L290 TraceCheckUtils]: 28: Hoare triple {4231#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {4231#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 10:25:32,400 WARN L284 TraceCheckUtils]: 29: Hoare quadruple {4231#(not (= |__VERIFIER_assert_#in~cond| 0))} {4190#(and (or (and (= (mod main_~a~0 2) 0) (<= (+ main_~y~0 (* (div main_~b~0 (- 2)) 2)) 1) (not (= main_~a~0 0))) (<= main_~y~0 main_~b~0)) (<= 1 main_~y~0))} #71#return; {4238#(and (or (and (= (mod main_~a~0 2) 0) (<= (+ main_~y~0 (* (div main_~b~0 (- 2)) 2)) 1) (not (= main_~a~0 0))) (<= main_~y~0 main_~b~0)) (<= 1 main_~y~0) (or (= (+ (* main_~y~0 main_~x~0) (* (- 1) main_~q~0)) 0) (and (= (mod (+ (* main_~y~0 main_~x~0) (* (- 1) main_~q~0)) (* main_~b~0 main_~a~0)) 0) (not (= main_~b~0 0)) (not (= main_~a~0 0)))))} is UNKNOWN [2022-04-15 10:25:32,401 INFO L290 TraceCheckUtils]: 30: Hoare triple {4238#(and (or (and (= (mod main_~a~0 2) 0) (<= (+ main_~y~0 (* (div main_~b~0 (- 2)) 2)) 1) (not (= main_~a~0 0))) (<= main_~y~0 main_~b~0)) (<= 1 main_~y~0) (or (= (+ (* main_~y~0 main_~x~0) (* (- 1) main_~q~0)) 0) (and (= (mod (+ (* main_~y~0 main_~x~0) (* (- 1) main_~q~0)) (* main_~b~0 main_~a~0)) 0) (not (= main_~b~0 0)) (not (= main_~a~0 0)))))} assume !(0 != ~a~0 && 0 != ~b~0); {4242#(and (= main_~q~0 (* main_~y~0 main_~x~0)) (<= 1 main_~y~0))} is VALID [2022-04-15 10:25:32,401 INFO L272 TraceCheckUtils]: 31: Hoare triple {4242#(and (= main_~q~0 (* main_~y~0 main_~x~0)) (<= 1 main_~y~0))} call __VERIFIER_assert((if ~q~0 == ~x~0 * ~y~0 then 1 else 0)); {4246#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 10:25:32,402 INFO L290 TraceCheckUtils]: 32: Hoare triple {4246#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {4250#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 10:25:32,402 INFO L290 TraceCheckUtils]: 33: Hoare triple {4250#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {4140#false} is VALID [2022-04-15 10:25:32,402 INFO L290 TraceCheckUtils]: 34: Hoare triple {4140#false} assume !false; {4140#false} is VALID [2022-04-15 10:25:32,402 INFO L134 CoverageAnalysis]: Checked inductivity of 32 backedges. 1 proven. 14 refuted. 0 times theorem prover too weak. 17 trivial. 0 not checked. [2022-04-15 10:25:32,402 INFO L328 TraceCheckSpWp]: Computing backward predicates... [2022-04-15 10:26:08,596 INFO L290 TraceCheckUtils]: 34: Hoare triple {4140#false} assume !false; {4140#false} is VALID [2022-04-15 10:26:08,596 INFO L290 TraceCheckUtils]: 33: Hoare triple {4250#(<= 1 __VERIFIER_assert_~cond)} assume 0 == ~cond; {4140#false} is VALID [2022-04-15 10:26:08,597 INFO L290 TraceCheckUtils]: 32: Hoare triple {4246#(<= 1 |__VERIFIER_assert_#in~cond|)} ~cond := #in~cond; {4250#(<= 1 __VERIFIER_assert_~cond)} is VALID [2022-04-15 10:26:08,597 INFO L272 TraceCheckUtils]: 31: Hoare triple {4266#(= main_~q~0 (* main_~y~0 main_~x~0))} call __VERIFIER_assert((if ~q~0 == ~x~0 * ~y~0 then 1 else 0)); {4246#(<= 1 |__VERIFIER_assert_#in~cond|)} is VALID [2022-04-15 10:26:08,598 INFO L290 TraceCheckUtils]: 30: Hoare triple {4270#(or (= main_~q~0 (* main_~y~0 main_~x~0)) (and (not (= main_~b~0 0)) (not (= main_~a~0 0))))} assume !(0 != ~a~0 && 0 != ~b~0); {4266#(= main_~q~0 (* main_~y~0 main_~x~0))} is VALID [2022-04-15 10:26:08,600 INFO L284 TraceCheckUtils]: 29: Hoare quadruple {4231#(not (= |__VERIFIER_assert_#in~cond| 0))} {4139#true} #71#return; {4270#(or (= main_~q~0 (* main_~y~0 main_~x~0)) (and (not (= main_~b~0 0)) (not (= main_~a~0 0))))} is VALID [2022-04-15 10:26:08,600 INFO L290 TraceCheckUtils]: 28: Hoare triple {4231#(not (= |__VERIFIER_assert_#in~cond| 0))} assume true; {4231#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 10:26:08,600 INFO L290 TraceCheckUtils]: 27: Hoare triple {4283#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} assume !(0 == ~cond); {4231#(not (= |__VERIFIER_assert_#in~cond| 0))} is VALID [2022-04-15 10:26:08,601 INFO L290 TraceCheckUtils]: 26: Hoare triple {4139#true} ~cond := #in~cond; {4283#(or (not (= |__VERIFIER_assert_#in~cond| 0)) (= __VERIFIER_assert_~cond 0))} is VALID [2022-04-15 10:26:08,601 INFO L272 TraceCheckUtils]: 25: Hoare triple {4139#true} call __VERIFIER_assert((if ~q~0 + ~a~0 * ~b~0 * ~p~0 == ~x~0 * ~y~0 then 1 else 0)); {4139#true} is VALID [2022-04-15 10:26:08,601 INFO L290 TraceCheckUtils]: 24: Hoare triple {4139#true} assume !!(#t~post6 < 20);havoc #t~post6; {4139#true} is VALID [2022-04-15 10:26:08,601 INFO L290 TraceCheckUtils]: 23: Hoare triple {4139#true} [92] L33-1_primed-->L33-1: Formula: (and (= |v_main_#t~post6_1| v_~counter~0_2) (= v_~counter~0_1 (+ |v_main_#t~post6_1| 1))) InVars {~counter~0=v_~counter~0_2} OutVars{~counter~0=v_~counter~0_1, main_#t~post6=|v_main_#t~post6_1|} AuxVars[] AssignedVars[~counter~0, main_#t~post6] {4139#true} is VALID [2022-04-15 10:26:08,601 INFO L290 TraceCheckUtils]: 22: Hoare triple {4139#true} [103] L46-2-->L33-1_primed: Formula: (and (= v_main_~q~0_71 v_main_~q~0_70) (= |v_main_#t~post6_68| |v_main_#t~post6_51|) (= v_main_~b~0_53 v_main_~b~0_52) (= v_~counter~0_69 v_~counter~0_68)) InVars {main_~q~0=v_main_~q~0_71, ~counter~0=v_~counter~0_69, main_~b~0=v_main_~b~0_53, main_#t~post6=|v_main_#t~post6_68|} OutVars{main_~q~0=v_main_~q~0_70, ~counter~0=v_~counter~0_68, main_~b~0=v_main_~b~0_52, main_#t~post6=|v_main_#t~post6_51|} AuxVars[] AssignedVars[main_~q~0, ~counter~0, main_~b~0, main_#t~post6] {4139#true} is VALID [2022-04-15 10:26:08,601 INFO L290 TraceCheckUtils]: 21: Hoare triple {4139#true} [102] L33-1_primed-->L46-2: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4139#true} is VALID [2022-04-15 10:26:08,601 INFO L290 TraceCheckUtils]: 20: Hoare triple {4139#true} [101] L46-2-->L33-1_primed: Formula: (let ((.cse5 (+ v_main_~q~0_71 (* v_main_~p~0_43 v_main_~a~0_82 v_main_~b~0_53)))) (let ((.cse1 (<= 0 v_main_~b~0_53)) (.cse4 (= 0 v_main_~a~0_82)) (.cse3 (< v_~counter~0_69 20)) (.cse0 (= .cse5 (* v_main_~x~0_34 v_main_~y~0_38))) (.cse2 (= (mod v_main_~a~0_82 2) 0)) (.cse6 (= |v_main_#t~post6_65| |v_main_#t~post6_51|)) (.cse7 (= v_main_~q~0_71 v_main_~q~0_70)) (.cse8 (= v_main_~b~0_53 v_main_~b~0_52)) (.cse9 (= v_~counter~0_69 v_~counter~0_68))) (or (and (= (+ v_~counter~0_68 v_main_~b~0_52) (+ v_~counter~0_69 v_main_~b~0_53)) .cse0 .cse1 (< v_main_~b~0_52 v_main_~b~0_53) .cse2 (<= (+ (div v_main_~b~0_52 (- 2)) v_main_~b~0_53) (+ (div (+ (- 1) v_main_~b~0_53) 2) 1)) .cse3 (not .cse4) (= .cse5 (+ v_main_~q~0_70 (* v_main_~p~0_43 v_main_~a~0_82 v_main_~b~0_52)))) (and .cse6 .cse7 (or (not .cse1) .cse4 (not .cse3) (not (= (mod v_main_~b~0_53 2) 1)) (not .cse0) (not .cse2)) .cse8 .cse9) (and .cse6 (= v_main_~x~0_34 v_main_~x~0_34) .cse7 (= v_main_~y~0_38 v_main_~y~0_38) (= v_main_~p~0_43 v_main_~p~0_43) (= v_main_~a~0_82 v_main_~a~0_82) .cse8 .cse9)))) InVars {main_~q~0=v_main_~q~0_71, ~counter~0=v_~counter~0_69, main_~x~0=v_main_~x~0_34, main_~y~0=v_main_~y~0_38, main_~b~0=v_main_~b~0_53, main_~p~0=v_main_~p~0_43, main_#t~post6=|v_main_#t~post6_65|, main_~a~0=v_main_~a~0_82} OutVars{main_~q~0=v_main_~q~0_70, ~counter~0=v_~counter~0_68, main_~x~0=v_main_~x~0_34, main_~y~0=v_main_~y~0_38, main_~b~0=v_main_~b~0_52, main_~p~0=v_main_~p~0_43, main_#t~post6=|v_main_#t~post6_51|, main_~a~0=v_main_~a~0_82} AuxVars[] AssignedVars[main_~q~0, ~counter~0, main_~b~0, main_#t~post6] {4139#true} is VALID [2022-04-15 10:26:08,601 INFO L290 TraceCheckUtils]: 19: Hoare triple {4139#true} [100] L33-1_primed-->L46-2: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4139#true} is VALID [2022-04-15 10:26:08,602 INFO L290 TraceCheckUtils]: 18: Hoare triple {4139#true} [99] L46-2-->L33-1_primed: Formula: (and (= v_main_~q~0_71 v_main_~q~0_70) (= |v_main_#t~post6_62| |v_main_#t~post6_51|) (= v_main_~b~0_53 v_main_~b~0_52) (= v_~counter~0_69 v_~counter~0_68)) InVars {main_~q~0=v_main_~q~0_71, ~counter~0=v_~counter~0_69, main_~b~0=v_main_~b~0_53, main_#t~post6=|v_main_#t~post6_62|} OutVars{main_~q~0=v_main_~q~0_70, ~counter~0=v_~counter~0_68, main_~b~0=v_main_~b~0_52, main_#t~post6=|v_main_#t~post6_51|} AuxVars[] AssignedVars[main_~q~0, ~counter~0, main_~b~0, main_#t~post6] {4139#true} is VALID [2022-04-15 10:26:08,602 INFO L290 TraceCheckUtils]: 17: Hoare triple {4139#true} [98] L33-1_primed-->L46-2: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4139#true} is VALID [2022-04-15 10:26:08,602 INFO L290 TraceCheckUtils]: 16: Hoare triple {4139#true} [97] L46-2-->L33-1_primed: Formula: (and (= |v_main_#t~post6_59| |v_main_#t~post6_51|) (= v_main_~q~0_71 v_main_~q~0_70) (= v_main_~b~0_53 v_main_~b~0_52) (= v_~counter~0_69 v_~counter~0_68)) InVars {main_~q~0=v_main_~q~0_71, ~counter~0=v_~counter~0_69, main_~b~0=v_main_~b~0_53, main_#t~post6=|v_main_#t~post6_59|} OutVars{main_~q~0=v_main_~q~0_70, ~counter~0=v_~counter~0_68, main_~b~0=v_main_~b~0_52, main_#t~post6=|v_main_#t~post6_51|} AuxVars[] AssignedVars[main_~q~0, ~counter~0, main_~b~0, main_#t~post6] {4139#true} is VALID [2022-04-15 10:26:08,602 INFO L290 TraceCheckUtils]: 15: Hoare triple {4139#true} [96] L33-1_primed-->L46-2: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4139#true} is VALID [2022-04-15 10:26:08,602 INFO L290 TraceCheckUtils]: 14: Hoare triple {4139#true} [95] L46-2-->L33-1_primed: Formula: (let ((.cse9 (+ v_main_~q~0_71 (* v_main_~p~0_43 v_main_~a~0_82 v_main_~b~0_53)))) (let ((.cse0 (= v_main_~q~0_71 v_main_~q~0_70)) (.cse6 (= v_main_~b~0_53 v_main_~b~0_52)) (.cse7 (= |v_main_#t~post6_56| |v_main_#t~post6_51|)) (.cse8 (= v_~counter~0_69 v_~counter~0_68)) (.cse4 (= .cse9 (* v_main_~x~0_34 v_main_~y~0_38))) (.cse1 (<= 0 v_main_~b~0_53)) (.cse5 (= (mod v_main_~a~0_82 2) 0)) (.cse3 (< v_~counter~0_69 20)) (.cse2 (= 0 v_main_~a~0_82))) (or (and .cse0 (or (not .cse1) .cse2 (not .cse3) (not (= (mod v_main_~b~0_53 2) 1)) (not .cse4) (not .cse5)) .cse6 .cse7 .cse8) (and (= v_main_~x~0_34 v_main_~x~0_34) .cse0 (= v_main_~y~0_38 v_main_~y~0_38) (= v_main_~p~0_43 v_main_~p~0_43) (= v_main_~a~0_82 v_main_~a~0_82) .cse6 .cse7 .cse8) (and (= (+ v_~counter~0_68 v_main_~b~0_52) (+ v_~counter~0_69 v_main_~b~0_53)) .cse4 .cse1 (< v_main_~b~0_52 v_main_~b~0_53) .cse5 (<= (+ (div v_main_~b~0_52 (- 2)) v_main_~b~0_53) (+ (div (+ (- 1) v_main_~b~0_53) 2) 1)) .cse3 (not .cse2) (= .cse9 (+ v_main_~q~0_70 (* v_main_~p~0_43 v_main_~a~0_82 v_main_~b~0_52))))))) InVars {main_~q~0=v_main_~q~0_71, ~counter~0=v_~counter~0_69, main_~x~0=v_main_~x~0_34, main_~y~0=v_main_~y~0_38, main_~b~0=v_main_~b~0_53, main_~p~0=v_main_~p~0_43, main_#t~post6=|v_main_#t~post6_56|, main_~a~0=v_main_~a~0_82} OutVars{main_~q~0=v_main_~q~0_70, ~counter~0=v_~counter~0_68, main_~x~0=v_main_~x~0_34, main_~y~0=v_main_~y~0_38, main_~b~0=v_main_~b~0_52, main_~p~0=v_main_~p~0_43, main_#t~post6=|v_main_#t~post6_51|, main_~a~0=v_main_~a~0_82} AuxVars[] AssignedVars[main_~q~0, ~counter~0, main_~b~0, main_#t~post6] {4139#true} is VALID [2022-04-15 10:26:08,602 INFO L290 TraceCheckUtils]: 13: Hoare triple {4139#true} [94] L33-1_primed-->L46-2: Formula: true InVars {} OutVars{} AuxVars[] AssignedVars[] {4139#true} is VALID [2022-04-15 10:26:08,602 INFO L290 TraceCheckUtils]: 12: Hoare triple {4139#true} [93] L46-2-->L33-1_primed: Formula: (and (= |v_main_#t~post6_53| |v_main_#t~post6_51|) (= v_main_~q~0_71 v_main_~q~0_70) (= v_main_~b~0_53 v_main_~b~0_52) (= v_~counter~0_69 v_~counter~0_68)) InVars {main_~q~0=v_main_~q~0_71, ~counter~0=v_~counter~0_69, main_~b~0=v_main_~b~0_53, main_#t~post6=|v_main_#t~post6_53|} OutVars{main_~q~0=v_main_~q~0_70, ~counter~0=v_~counter~0_68, main_~b~0=v_main_~b~0_52, main_#t~post6=|v_main_#t~post6_51|} AuxVars[] AssignedVars[main_~q~0, ~counter~0, main_~b~0, main_#t~post6] {4139#true} is VALID [2022-04-15 10:26:08,602 INFO L290 TraceCheckUtils]: 11: Hoare triple {4139#true} ~a~0 := ~x~0;~b~0 := ~y~0;~p~0 := 1;~q~0 := 0; {4139#true} is VALID [2022-04-15 10:26:08,602 INFO L284 TraceCheckUtils]: 10: Hoare quadruple {4139#true} {4139#true} #69#return; {4139#true} is VALID [2022-04-15 10:26:08,602 INFO L290 TraceCheckUtils]: 9: Hoare triple {4139#true} assume true; {4139#true} is VALID [2022-04-15 10:26:08,603 INFO L290 TraceCheckUtils]: 8: Hoare triple {4139#true} assume !(0 == ~cond); {4139#true} is VALID [2022-04-15 10:26:08,603 INFO L290 TraceCheckUtils]: 7: Hoare triple {4139#true} ~cond := #in~cond; {4139#true} is VALID [2022-04-15 10:26:08,603 INFO L272 TraceCheckUtils]: 6: Hoare triple {4139#true} call assume_abort_if_not((if ~y~0 >= 1 then 1 else 0)); {4139#true} is VALID [2022-04-15 10:26:08,603 INFO L290 TraceCheckUtils]: 5: Hoare triple {4139#true} havoc ~x~0;havoc ~y~0;havoc ~a~0;havoc ~b~0;havoc ~p~0;havoc ~q~0;assume -2147483648 <= #t~nondet4 && #t~nondet4 <= 2147483647;~x~0 := #t~nondet4;havoc #t~nondet4;assume -2147483648 <= #t~nondet5 && #t~nondet5 <= 2147483647;~y~0 := #t~nondet5;havoc #t~nondet5; {4139#true} is VALID [2022-04-15 10:26:08,603 INFO L272 TraceCheckUtils]: 4: Hoare triple {4139#true} call #t~ret7 := main(); {4139#true} is VALID [2022-04-15 10:26:08,603 INFO L284 TraceCheckUtils]: 3: Hoare quadruple {4139#true} {4139#true} #77#return; {4139#true} is VALID [2022-04-15 10:26:08,603 INFO L290 TraceCheckUtils]: 2: Hoare triple {4139#true} assume true; {4139#true} is VALID [2022-04-15 10:26:08,603 INFO L290 TraceCheckUtils]: 1: Hoare triple {4139#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; {4139#true} is VALID [2022-04-15 10:26:08,603 INFO L272 TraceCheckUtils]: 0: Hoare triple {4139#true} call ULTIMATE.init(); {4139#true} is VALID [2022-04-15 10:26:08,603 INFO L134 CoverageAnalysis]: Checked inductivity of 32 backedges. 1 proven. 1 refuted. 0 times theorem prover too weak. 30 trivial. 0 not checked. [2022-04-15 10:26:08,603 INFO L136 FreeRefinementEngine]: Strategy CAMEL found an infeasible trace [2022-04-15 10:26:08,604 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleSmtInterpolCraig [444516871] [2022-04-15 10:26:08,604 WARN L310 FreeRefinementEngine]: Interpolation failed due to KNOWN_IGNORE: SMT_SOLVER_CANNOT_INTERPOLATE_INPUT [2022-04-15 10:26:08,604 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleZ3 [225294247] [2022-04-15 10:26:08,604 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleZ3 [225294247] provided 0 perfect and 2 imperfect interpolant sequences [2022-04-15 10:26:08,604 INFO L184 FreeRefinementEngine]: Found 0 perfect and 2 imperfect interpolant sequences. [2022-04-15 10:26:08,604 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [] imperfect sequences [13, 8] total 16 [2022-04-15 10:26:13,111 INFO L136 FreeRefinementEngine]: Strategy ACCELERATED_INTERPOLATION found an infeasible trace [2022-04-15 10:26:13,111 INFO L333 FreeRefinementEngine]: Using interpolant generator IpTcStrategyModuleAcceleratedInterpolation [778435364] [2022-04-15 10:26:13,111 INFO L157 FreeRefinementEngine]: IpTcStrategyModuleAcceleratedInterpolation [778435364] provided 1 perfect and 0 imperfect interpolant sequences [2022-04-15 10:26:13,111 INFO L184 FreeRefinementEngine]: Found 1 perfect and 0 imperfect interpolant sequences. [2022-04-15 10:26:13,111 INFO L197 FreeRefinementEngine]: Number of different interpolants: perfect sequences [23] imperfect sequences [] total 23 [2022-04-15 10:26:13,112 INFO L121 tionRefinementEngine]: Using interpolant automaton builder IpAbStrategyModuleStraightlineAll [105648797] [2022-04-15 10:26:13,112 INFO L85 oduleStraightlineAll]: Using 1 perfect interpolants to construct interpolant automaton [2022-04-15 10:26:13,112 INFO L78 Accepts]: Start accepts. Automaton has has 23 states, 21 states have (on average 1.1904761904761905) internal successors, (25), 18 states have internal predecessors, (25), 4 states have call successors, (6), 3 states have call predecessors, (6), 4 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) Word has length 35 [2022-04-15 10:26:13,112 INFO L84 Accepts]: Finished accepts. word is accepted. [2022-04-15 10:26:13,112 INFO L86 InductivityCheck]: Starting inductivity check of a Floyd-Hoare automaton with has 23 states, 21 states have (on average 1.1904761904761905) internal successors, (25), 18 states have internal predecessors, (25), 4 states have call successors, (6), 3 states have call predecessors, (6), 4 states have return successors, (4), 4 states have call predecessors, (4), 3 states have call successors, (4) [2022-04-15 10:26:15,137 WARN L143 InductivityCheck]: Transition 4371#(and (= (mod (+ main_~b~0 1) 2) 1) (= (mod main_~a~0 2) 0) (< ~counter~0 21) (<= 0 (+ main_~b~0 1)) (= (+ main_~q~0 (* main_~b~0 main_~a~0 main_~p~0)) (* main_~y~0 main_~x~0)) (not (= main_~a~0 0))) ( _ , #t~post6 := ~counter~0;~counter~0 := 1 + #t~post6; , 4190#(and (or (and (= (mod main_~a~0 2) 0) (<= (+ main_~y~0 (* (div main_~b~0 (- 2)) 2)) 1) (not (= main_~a~0 0))) (<= main_~y~0 main_~b~0)) (<= 1 main_~y~0)) ) not inductive [2022-04-15 10:26:15,156 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-04-15 10:26:15,338 WARN L460 AbstractCegarLoop]: Destroyed unattended storables created during the last iteration: 10 /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 -smt2 -in SMTLIB2_COMPLIANT=true,SelfDestructingSolverStorable9 [2022-04-15 10:26:15,339 FATAL L? ?]: The Plugin de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction has thrown an exception: java.lang.AssertionError: inductivity failed at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.predicates.InductivityCheck.evaluateResult(InductivityCheck.java:145) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.predicates.InductivityCheck.checkInductivity(InductivityCheck.java:103) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.predicates.InductivityCheck.(InductivityCheck.java:75) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.BasicCegarLoop.constructInterpolantAutomaton(BasicCegarLoop.java:682) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.AbstractCegarLoop.constructRefinementAutomaton(AbstractCegarLoop.java:547) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.AbstractCegarLoop.iterate(AbstractCegarLoop.java:420) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.AbstractCegarLoop.startCegar(AbstractCegarLoop.java:349) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.AbstractCegarLoop.runCegar(AbstractCegarLoop.java:331) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.CegarLoopUtils.getCegarLoopResult(CegarLoopUtils.java:56) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionStarter.executeCegarLoop(TraceAbstractionStarter.java:411) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionStarter.analyseProgram(TraceAbstractionStarter.java:301) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionStarter.analyseSequentialProgram(TraceAbstractionStarter.java:261) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionStarter.runCegarLoops(TraceAbstractionStarter.java:174) at de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.TraceAbstractionStarter.(TraceAbstractionStarter.java:153) 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-04-15 10:26:15,342 INFO L158 Benchmark]: Toolchain (without parser) took 240509.81ms. Allocated memory was 190.8MB in the beginning and 246.4MB in the end (delta: 55.6MB). Free memory was 140.1MB in the beginning and 216.5MB in the end (delta: -76.3MB). There was no memory consumed. Max. memory is 8.0GB. [2022-04-15 10:26:15,342 INFO L158 Benchmark]: CDTParser took 0.08ms. Allocated memory is still 190.8MB. Free memory was 156.0MB in the beginning and 155.9MB in the end (delta: 146.8kB). There was no memory consumed. Max. memory is 8.0GB. [2022-04-15 10:26:15,342 INFO L158 Benchmark]: CACSL2BoogieTranslator took 167.28ms. Allocated memory is still 190.8MB. Free memory was 140.0MB in the beginning and 167.1MB in the end (delta: -27.1MB). Peak memory consumption was 13.0MB. Max. memory is 8.0GB. [2022-04-15 10:26:15,342 INFO L158 Benchmark]: Boogie Preprocessor took 18.93ms. Allocated memory is still 190.8MB. Free memory was 167.1MB in the beginning and 165.6MB in the end (delta: 1.5MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. [2022-04-15 10:26:15,342 INFO L158 Benchmark]: RCFGBuilder took 255.17ms. Allocated memory is still 190.8MB. Free memory was 165.6MB in the beginning and 152.9MB in the end (delta: 12.7MB). Peak memory consumption was 12.6MB. Max. memory is 8.0GB. [2022-04-15 10:26:15,342 INFO L158 Benchmark]: TraceAbstraction took 240059.09ms. Allocated memory was 190.8MB in the beginning and 246.4MB in the end (delta: 55.6MB). Free memory was 152.0MB in the beginning and 216.5MB in the end (delta: -64.5MB). There was no memory consumed. Max. memory is 8.0GB. [2022-04-15 10:26:15,343 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.08ms. Allocated memory is still 190.8MB. Free memory was 156.0MB in the beginning and 155.9MB in the end (delta: 146.8kB). There was no memory consumed. Max. memory is 8.0GB. * CACSL2BoogieTranslator took 167.28ms. Allocated memory is still 190.8MB. Free memory was 140.0MB in the beginning and 167.1MB in the end (delta: -27.1MB). Peak memory consumption was 13.0MB. Max. memory is 8.0GB. * Boogie Preprocessor took 18.93ms. Allocated memory is still 190.8MB. Free memory was 167.1MB in the beginning and 165.6MB in the end (delta: 1.5MB). Peak memory consumption was 2.1MB. Max. memory is 8.0GB. * RCFGBuilder took 255.17ms. Allocated memory is still 190.8MB. Free memory was 165.6MB in the beginning and 152.9MB in the end (delta: 12.7MB). Peak memory consumption was 12.6MB. Max. memory is 8.0GB. * TraceAbstraction took 240059.09ms. Allocated memory was 190.8MB in the beginning and 246.4MB in the end (delta: 55.6MB). Free memory was 152.0MB in the beginning and 216.5MB in the end (delta: -64.5MB). There was no memory consumed. Max. memory is 8.0GB. * Results from de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: - ExceptionOrErrorResult: AssertionError: inductivity failed de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction: AssertionError: inductivity failed: de.uni_freiburg.informatik.ultimate.plugins.generator.traceabstraction.predicates.InductivityCheck.evaluateResult(InductivityCheck.java:145) RESULT: Ultimate could not prove your program: Toolchain returned no result. [2022-04-15 10:26:15,380 INFO L552 MonitoredProcess]: [MP /storage/repos/ultimate/releaseScripts/default/UAutomizer-linux/z3 SMTLIB2_COMPLIANT=true -memory:2024 -smt2 -in -t:2000 (1)] Ended with exit code 0 Received shutdown request...