1/*-----------------------------------------------------------------------------+
2Copyright (c) 2008-2009: Joachim Faulhaber
3+------------------------------------------------------------------------------+
4 Distributed under the Boost Software License, Version 1.0.
5 (See accompanying file LICENCE.txt or copy at
6 http://www.boost.org/LICENSE_1_0.txt)
7+-----------------------------------------------------------------------------*/
8#ifndef BOOST_ICL_TEST_TOTAL_INTERVAL_QUANTIFIER_CASES_HPP_JOFA_090701
9#define BOOST_ICL_TEST_TOTAL_INTERVAL_QUANTIFIER_CASES_HPP_JOFA_090701
10
11//------------------------------------------------------------------------------
12// total_absorber
13//------------------------------------------------------------------------------
14BOOST_AUTO_TEST_CASE_TEMPLATE
15(test_itl_total_itv_quantifier_check_monoid_plus_4_bicremental_types, T, bicremental_types)
16{ itv_quantifier_check_monoid_plus_4_bicremental_types<T, std::string, total_absorber, INTERVAL_MAP>();}
17
18BOOST_AUTO_TEST_CASE_TEMPLATE
19(test_itl_total_itv_quantifier_check_monoid_et_4_bicremental_types, T, bicremental_types)
20{ itv_quantifier_check_monoid_et_4_bicremental_types<T, double, total_absorber, INTERVAL_MAP>();}
21
22BOOST_AUTO_TEST_CASE_TEMPLATE
23(test_itl_total_itv_quantifier_check_abelian_monoid_plus_4_bicremental_types, T, bicremental_types)
24{ itv_quantifier_check_abelian_monoid_plus_4_bicremental_types<T, std::string, total_absorber, INTERVAL_MAP>();}
25
26BOOST_AUTO_TEST_CASE_TEMPLATE
27(test_itl_total_itv_quantifier_check_abelian_monoid_et_4_bicremental_types, T, bicremental_types)
28{ itv_quantifier_check_abelian_monoid_et_4_bicremental_types<T, int, total_absorber, INTERVAL_MAP>();}
29
30// (0-x) + x = 0 | total absorber
31BOOST_AUTO_TEST_CASE_TEMPLATE
32(test_itl_total_itv_quantifier_check_abelian_group_plus_4_bicremental_domain_and_discrete_codomain, T, bicremental_types)
33{ itv_quantifier_check_abelian_group_plus_4_bicremental_types<T, int, total_absorber, INTERVAL_MAP>();}
34
35BOOST_AUTO_TEST_CASE_TEMPLATE
36(test_itl_total_itv_quantifier_check_abelian_group_plus_4_bicremental_domain_and_continuous_codomain_1, T, bicremental_types)
37{ itv_quantifier_check_abelian_group_plus_4_bicremental_types<T, float, total_absorber, INTERVAL_MAP>();}
38
39BOOST_AUTO_TEST_CASE_TEMPLATE
40(test_itl_total_itv_quantifier_check_abelian_group_plus_4_bicremental_domain_and_continuous_codomain_2, T, bicremental_types)
41{ itv_quantifier_check_abelian_group_plus_4_bicremental_types<T, boost::rational<int>, total_absorber, INTERVAL_MAP>();}
42
43//------------------------------------------------------------------------------
44// total_enricher
45//------------------------------------------------------------------------------
46BOOST_AUTO_TEST_CASE_TEMPLATE
47(test_itl_total_enricher_itv_quantifier_check_monoid_plus_4_bicremental_types, T, bicremental_types)
48{ itv_quantifier_check_monoid_plus_4_bicremental_types<T, std::string, total_enricher, INTERVAL_MAP>();}
49
50BOOST_AUTO_TEST_CASE_TEMPLATE
51(test_itl_total_enricher_itv_quantifier_check_monoid_et_4_bicremental_types, T, bicremental_types)
52{ itv_quantifier_check_monoid_et_4_bicremental_types<T, int, total_enricher, INTERVAL_MAP>();}
53
54BOOST_AUTO_TEST_CASE_TEMPLATE
55(test_itl_total_enricher_itv_quantifier_check_abelian_monoid_plus_4_bicremental_types, T, bicremental_types)
56{ itv_quantifier_check_abelian_monoid_plus_4_bicremental_types<T, std::string, total_enricher, INTERVAL_MAP>();}
57
58BOOST_AUTO_TEST_CASE_TEMPLATE
59(test_itl_total_enricher_itv_quantifier_check_abelian_monoid_et_4_bicremental_types, T, bicremental_types)
60{ itv_quantifier_check_abelian_monoid_et_4_bicremental_types<T, float, total_enricher, INTERVAL_MAP>();}
61
62// (0-x) + x =d= 0 | total absorber
63BOOST_AUTO_TEST_CASE_TEMPLATE
64(test_itl_total_enricher_itv_quantifier_check_abelian_group_plus_prot_inv_4_bicremental_domain_and_discrete_codomain, T, bicremental_types)
65{ itv_quantifier_check_abelian_group_plus_prot_inv_4_bicremental_types<T, int, total_enricher, INTERVAL_MAP>();}
66
67BOOST_AUTO_TEST_CASE_TEMPLATE
68(test_itl_total_enricher_itv_quantifier_check_abelian_group_plus_prot_inv_4_bicremental_domain_and_continuous_codomain_1, T, bicremental_types)
69{ itv_quantifier_check_abelian_group_plus_prot_inv_4_bicremental_types<T, double, total_enricher, INTERVAL_MAP>();}
70
71BOOST_AUTO_TEST_CASE_TEMPLATE
72(test_itl_total_enricher_itv_quantifier_check_abelian_group_plus_prot_inv_4_bicremental_domain_and_continuous_codomain_2, T, bicremental_types)
73{ itv_quantifier_check_abelian_group_plus_prot_inv_4_bicremental_types<T, boost::rational<int>, total_enricher, INTERVAL_MAP>();}
74
75
76// absorber enricher
77// partial x - x == 0 x - x =d= 0 partiality of subtraction
78// total (-x)+ x == 0 (-x)+ x =d= 0 totality of subtraction
79
80//------------------------------------------------------------------------------
81// Inner complement
82//------------------------------------------------------------------------------
83BOOST_AUTO_TEST_CASE_TEMPLATE
84(test_itl_total_enricher_itv_quantifier_check_inner_complementarity_4_bicremental_types, T, bicremental_types)
85{ itv_quantifier_check_inner_complementarity_4_bicremental_types<T, int, total_enricher, interval_map>();}
86
87BOOST_AUTO_TEST_CASE_TEMPLATE
88(test_itl_total_enricher_itv_quantifier_check_length_complementarity_4_bicremental_types, T, bicremental_types)
89{ itv_quantifier_check_length_complementarity_4_bicremental_types<T, double, total_enricher, split_interval_map>();}
90
91BOOST_AUTO_TEST_CASE_TEMPLATE
92(test_itl_total_absorber_itv_quantifier_check_inner_complementarity_4_bicremental_types, T, bicremental_types)
93{ itv_quantifier_check_inner_complementarity_4_bicremental_types<T, int, total_absorber, split_interval_map>();}
94
95BOOST_AUTO_TEST_CASE_TEMPLATE
96(test_itl_total_absorber_itv_quantifier_check_length_complementarity_4_bicremental_types, T, bicremental_types)
97{ itv_quantifier_check_length_complementarity_4_bicremental_types<T, double, total_absorber, interval_map>();}
98
99#endif // BOOST_ICL_TEST_TOTAL_INTERVAL_QUANTIFIER_CASES_HPP_JOFA_090701
100
101

source code of boost/libs/icl/test/test_total_interval_quantifier_cases.hpp