// concept predicate;
#include <concepts>
+#include <type_traits>
static_assert(std::predicate<bool()>);
static_assert(std::predicate<bool (*)()>);
// concept predicate;
#include <concepts>
+#include <type_traits>
static_assert(std::predicate<bool()>);
static_assert(std::predicate<bool (*)()>);
// concept common_with;
#include <concepts>
+#include <type_traits>
template <class T, class U>
constexpr bool CheckCommonWith() noexcept {
// concept common_reference_with;
#include <concepts>
+#include <type_traits>
template <class T, class U>
constexpr bool CheckCommonReferenceWith() noexcept {