deep_causality_algebra 0.1.0

Abstract algebra traits (groups, rings, fields, algebras) and isomorphism markers for deep_causality.
Documentation
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
/*
 * SPDX-License-Identifier: MIT
 * Copyright (c) 2023 - 2026. The DeepCausality Authors and Contributors. All Rights Reserved.
 */

//! A bounded semilattice: a commutative, idempotent monoid.

use crate::{CommutativeMonoid, Idempotent};

/// A **bounded semilattice**: a [`CommutativeMonoid`] that is also [`Idempotent`] — associative,
/// commutative, idempotent, with an identity (the bound).
///
/// The boolean `AggregateLogic` reducers are exactly these: `All` is the bounded ∧-semilattice
/// (identity `true`), `Any` the bounded ∨-semilattice (identity `false`).
pub trait BoundedSemilattice: CommutativeMonoid + Idempotent {}