vyre-conform 0.1.0

Conformance suite for vyre backends — proves byte-identical output to CPU reference
Documentation
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
//! Built-in defendants for primitive.bitwise.ctz.

use super::super::macros::*;
use crate::adversarial::defender::{Defendant, DefendantCatalog, DefenderClass};

#[must_use]
#[inline]
pub(crate) fn catalog_primitive_bitwise_ctz() -> DefendantCatalog {
    DefendantCatalog {
        target_op_id: "primitive.bitwise.ctz",
        defendants: vec![
            Defendant { id: "ctz_law_bounded_0_32_corruption_0", target_op_id: "primitive.bitwise.ctz", description: "CTZ law mutation corruption 0 falsifies the declared bounded(0,32) law at a concrete witness.", class: DefenderClass::PseudoCorrect, broken_fn: ctz_law_mut::<0, 0, 0>, fails_laws: &["bounded(0,32)"], expected_witness: &[(0, 0)], },
            Defendant { id: "ctz_law_bounded_0_32_corruption_1", target_op_id: "primitive.bitwise.ctz", description: "CTZ law mutation corruption 1 falsifies the declared bounded(0,32) law at a concrete witness.", class: DefenderClass::PseudoCorrect, broken_fn: ctz_law_mut::<1, 0, 1>, fails_laws: &["bounded(0,32)"], expected_witness: &[(1, 0)], },
        ],
    }
}