llvm/mlir/unittests/Analysis/Presburger/QuasiPolynomialTest.cpp

//===- MatrixTest.cpp - Tests for QuasiPolynomial -------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
//
//===----------------------------------------------------------------------===//

#include "mlir/Analysis/Presburger/QuasiPolynomial.h"
#include "./Utils.h"
#include "mlir/Analysis/Presburger/Fraction.h"
#include <gmock/gmock.h>
#include <gtest/gtest.h>

usingnamespacemlir;
usingnamespacepresburger;

// Test the arithmetic operations on QuasiPolynomials;
// addition, subtraction, multiplication, and division
// by a constant.
// Two QPs of 3 parameters each were generated randomly
// and their sum, difference, and product computed by hand.
TEST(QuasiPolynomialTest, arithmetic) {}

// Test the simplify() operation on QPs, which removes terms that
// are identically zero. A random QP was generated and terms were
// changed to account for each condition in simplify() – 
// the term coefficient being zero, or all the coefficients in some
// affine term in the product being zero.
TEST(QuasiPolynomialTest, simplify) {}