use crate::prelude::*;
pub(crate) fn normalize_positive_order_atomic_fact(atomic_fact: &AtomicFact) -> Option<AtomicFact> {
match atomic_fact {
AtomicFact::LessFact(f) => Some(AtomicFact::LessFact(f.clone())),
AtomicFact::LessEqualFact(f) => Some(AtomicFact::LessEqualFact(f.clone())),
AtomicFact::GreaterFact(f) => Some(AtomicFact::LessFact(LessFact::new(
f.right.clone(),
f.left.clone(),
f.line_file.clone(),
))),
AtomicFact::GreaterEqualFact(f) => Some(AtomicFact::LessEqualFact(LessEqualFact::new(
f.right.clone(),
f.left.clone(),
f.line_file.clone(),
))),
AtomicFact::NotLessFact(f) => Some(AtomicFact::LessEqualFact(LessEqualFact::new(
f.right.clone(),
f.left.clone(),
f.line_file.clone(),
))),
AtomicFact::NotLessEqualFact(f) => Some(AtomicFact::LessFact(LessFact::new(
f.right.clone(),
f.left.clone(),
f.line_file.clone(),
))),
AtomicFact::NotGreaterFact(f) => Some(AtomicFact::LessEqualFact(LessEqualFact::new(
f.left.clone(),
f.right.clone(),
f.line_file.clone(),
))),
AtomicFact::NotGreaterEqualFact(f) => Some(AtomicFact::LessFact(LessFact::new(
f.left.clone(),
f.right.clone(),
f.line_file.clone(),
))),
_ => None,
}
}