// Copyright (c) 2006-2013 INRIA Nancy-Grand Est (France). All rights reserved. // // This file is part of CGAL (www.cgal.org) // // $URL: https://github.com/CGAL/cgal/blob/v5.1/Algebraic_kernel_d/include/CGAL/RS/comparator_1.h $ // $Id: comparator_1.h 52164b1 2019-10-19T15:34:59+02:00 Sébastien Loriot // SPDX-License-Identifier: LGPL-3.0-or-later OR LicenseRef-Commercial // // Author: Luis Peñaranda #ifndef CGAL_RS_COMPARATOR_1_H #define CGAL_RS_COMPARATOR_1_H namespace CGAL{ namespace RS_AK1{ template struct Simple_comparator_1{ typedef Polynomial_ Polynomial; typedef Bound_ Bound; typedef Refiner_ Refiner; typedef Signat_ Signat; typedef Ptraits_ Ptraits; typedef typename Ptraits::Gcd_up_to_constant_factor Gcd; typedef typename Ptraits::Degree Degree; CGAL::Comparison_result operator()(const Polynomial &p1,Bound &l1,Bound &r1, const Polynomial &p2,Bound &l2,Bound &r2)const{ CGAL_precondition(l1<=r1&&l2<=r2); if(l1<=l2){ if(r1l2?l1:l2); if(sleft==ZERO) return EQUAL; CGAL::Sign sright=sg(r1=l2:r2>=l1); return (r1