pub struct RetrocausalLoop { /* private fields */ }Expand description
Retrocausal loop that allows future states to influence past decisions
Implementations§
Source§impl RetrocausalLoop
impl RetrocausalLoop
pub fn new(violation_threshold: f64) -> Self
Sourcepub fn add_state(&self, value: f64, timestamp: u64)
pub fn add_state(&self, value: f64, timestamp: u64)
Add a state that can be retroactively influenced
Sourcepub fn apply_retrocausality(&self, future_value: f64, influence_range: u64)
pub fn apply_retrocausality(&self, future_value: f64, influence_range: u64)
Apply retrocausal influence from future to past
Sourcepub fn check_causality(&self) -> bool
pub fn check_causality(&self) -> bool
Check for causality violations
Sourcepub fn create_paradox(&self, paradox_value: f64) -> Result<f64, String>
pub fn create_paradox(&self, paradox_value: f64) -> Result<f64, String>
Create a temporal paradox and resolve it
Sourcepub fn add_constraint(
&mut self,
target_time: u64,
condition: Box<dyn Fn(f64) -> bool + Send + Sync>,
influence_strength: f64,
)
pub fn add_constraint( &mut self, target_time: u64, condition: Box<dyn Fn(f64) -> bool + Send + Sync>, influence_strength: f64, )
Add a constraint that affects retrocausal behavior
Sourcepub fn apply_feedback(&self, current_value: f64, current_time: u64) -> f64
pub fn apply_feedback(&self, current_value: f64, current_time: u64) -> f64
Apply feedback from future constraints to current value
Sourcepub fn check_violations(&self, current_time: u64) -> usize
pub fn check_violations(&self, current_time: u64) -> usize
Check for violations of retrocausal constraints
Auto Trait Implementations§
impl Freeze for RetrocausalLoop
impl !RefUnwindSafe for RetrocausalLoop
impl Send for RetrocausalLoop
impl Sync for RetrocausalLoop
impl Unpin for RetrocausalLoop
impl !UnwindSafe for RetrocausalLoop
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> Pointable for T
impl<T> Pointable for T
Source§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
Source§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
The inverse inclusion map: attempts to construct
self from the equivalent element of its
superset. Read moreSource§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
Checks if
self is actually part of its subset T (and can be converted to it).Source§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
Use with care! Same as
self.to_subset but without any property checks. Always succeeds.Source§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
The inclusion map: converts
self to the equivalent element of its superset.