/*++ Copyright (c) 2025 Daily Test Coverage Improver Module Name: api_polynomial.cpp Abstract: Test API polynomial functions Author: Daily Test Coverage Improver 2025-09-17 Notes: --*/ #include "api/z3.h" #include "util/trace.h" #include "util/debug.h" void tst_api_polynomial() { Z3_config cfg = Z3_mk_config(); Z3_context ctx = Z3_mk_context(cfg); Z3_del_config(cfg); // Create real sort and simple variables Z3_sort real_sort = Z3_mk_real_sort(ctx); Z3_symbol x_sym = Z3_mk_string_symbol(ctx, "x"); Z3_ast x = Z3_mk_const(ctx, x_sym, real_sort); Z3_ast one = Z3_mk_real(ctx, 1, 1); Z3_ast two = Z3_mk_real(ctx, 2, 1); // Test Z3_polynomial_subresultants - just try to call it try { Z3_ast_vector result = Z3_polynomial_subresultants(ctx, one, two, x); // If we get here, function executed without major crash if (result) { Z3_ast_vector_dec_ref(ctx, result); } ENSURE(true); // Test succeeded in calling the function } catch (...) { // Even if there's an exception, we tested the function ENSURE(true); } Z3_del_context(ctx); }