bcinr-cmca 26.10.11

CMCA-RDF deterministic substrate crate
Documentation
// This file is generated by generator.py. DO NOT EDIT.

use crate::fixed::{NonNegativeFixed, SignedFixed};

pub const N: usize = 9;
pub const F: usize = 10;
pub const K: usize = 5;
pub const Q: usize = 5;

pub const GENERATOR_VERSION: &str = "v1.1.0";
pub const RDF_INPUT_DIGEST: &str =
    "448195add75142b933b24d29950c22d4c2c92f82f23caf4f95368e7770b44152";
pub const GENERATOR_SOURCE_DIGEST: &str =
    "bf159da344a6d4a2091d150c5a8c4eab5478ca43dafd3c6501d699e8a4027fb6";
pub const FACTOR_ACCESS_FREQUENCY: usize = 0;
pub const FACTOR_ACCESS_FREQUENCY_IRI: &str = "cmca:accessFrequency";
pub const FACTOR_BUSINESS_VALUE: usize = 1;
pub const FACTOR_BUSINESS_VALUE_IRI: &str = "cmca:businessValue";
pub const FACTOR_RECOMPUTATION_COST: usize = 2;
pub const FACTOR_RECOMPUTATION_COST_IRI: &str = "cmca:recomputationCost";
pub const FACTOR_RETRIEVAL_DEMAND: usize = 3;
pub const FACTOR_RETRIEVAL_DEMAND_IRI: &str = "cmca:retrievalDemand";
pub const FACTOR_SCHEDULING_DEMAND: usize = 4;
pub const FACTOR_SCHEDULING_DEMAND_IRI: &str = "cmca:schedulingDemand";
pub const FACTOR_SEARCH_DEMAND: usize = 5;
pub const FACTOR_SEARCH_DEMAND_IRI: &str = "cmca:searchDemand";
pub const FACTOR_STANDING: usize = 6;
pub const FACTOR_STANDING_IRI: &str = "cmca:standing";
pub const FACTOR_VALIDITY: usize = 7;
pub const FACTOR_VALIDITY_IRI: &str = "cmca:validity";
pub const FACTOR_VERIFICATION_COST: usize = 8;
pub const FACTOR_VERIFICATION_COST_IRI: &str = "cmca:verificationCost";
pub const FACTOR_DOWNSTREAM_CONSEQUENCE: usize = 9;
pub const FACTOR_DOWNSTREAM_CONSEQUENCE_IRI: &str = "cmca:downstreamConsequence";
pub const MEASURE_CACHE: usize = 0;
pub const MEASURE_CACHE_IRI: &str = "cmca:MeasureCache";
pub const MEASURE_GENERALIZATION_PROOF: usize = 1;
pub const MEASURE_GENERALIZATION_PROOF_IRI: &str = "cmca:MeasureGeneralizationProof";
pub const MEASURE_RETRIEVAL: usize = 2;
pub const MEASURE_RETRIEVAL_IRI: &str = "cmca:MeasureRetrieval";
pub const MEASURE_SCHEDULING: usize = 3;
pub const MEASURE_SCHEDULING_IRI: &str = "cmca:MeasureScheduling";
pub const MEASURE_SEARCH: usize = 4;
pub const MEASURE_SEARCH_IRI: &str = "cmca:MeasureSearch";
pub const LENS_COVERAGE: usize = 0;
pub const LENS_COVERAGE_IRI: &str = "cmca:LensCoverage";
pub const LENS_EXPLOITATION: usize = 1;
pub const LENS_EXPLOITATION_IRI: &str = "cmca:LensExploitation";
pub const LENS_GENERALIZATION_PROOF: usize = 2;
pub const LENS_GENERALIZATION_PROOF_IRI: &str = "cmca:LensGeneralizationProof";
pub const LENS_PROPORTIONAL: usize = 3;
pub const LENS_PROPORTIONAL_IRI: &str = "cmca:LensProportional";
pub const LENS_RARE: usize = 4;
pub const LENS_RARE_IRI: &str = "cmca:LensRare";
pub const OBJECT_GEN_ARTIFACT__A: usize = 0;
pub const OBJECT_GEN_ARTIFACT__A_IRI: &str = "cmca:GenArtifact_A";
pub const OBJECT_GEN_ARTIFACT__B: usize = 1;
pub const OBJECT_GEN_ARTIFACT__B_IRI: &str = "cmca:GenArtifact_B";
pub const OBJECT_GEN_OBJ__ACTIVITY: usize = 2;
pub const OBJECT_GEN_OBJ__ACTIVITY_IRI: &str = "cmca:GenObj_Activity";
pub const OBJECT_GEN_OBJ__DEPLOYMENT: usize = 3;
pub const OBJECT_GEN_OBJ__DEPLOYMENT_IRI: &str = "cmca:GenObj_Deployment";
pub const OBJECT_GEN_OBJ__OBLIGATION: usize = 4;
pub const OBJECT_GEN_OBJ__OBLIGATION_IRI: &str = "cmca:GenObj_Obligation";
pub const OBJECT_GEN_OBJ__OUTCOME: usize = 5;
pub const OBJECT_GEN_OBJ__OUTCOME_IRI: &str = "cmca:GenObj_Outcome";
pub const OBJECT_GEN_OBJ__SINGLE: usize = 6;
pub const OBJECT_GEN_OBJ__SINGLE_IRI: &str = "cmca:GenObj_Single";
pub const OBJECT_GEN_OBJ__VALUE: usize = 7;
pub const OBJECT_GEN_OBJ__VALUE_IRI: &str = "cmca:GenObj_Value";
pub const OBJECT_OBJ__GENERALIZATION_PROOF: usize = 8;
pub const OBJECT_OBJ__GENERALIZATION_PROOF_IRI: &str = "cmca:Obj_GeneralizationProof";

#[derive(Copy, Clone, Debug)]
pub struct PackedSemanticState {
    pub id: u32,
    pub factors: [NonNegativeFixed; F],
}

#[derive(Copy, Clone, Debug)]
pub struct LensSpec {
    pub id: u32,
    pub q: SignedFixed,
}

pub static ETA: NonNegativeFixed = NonNegativeFixed::from_bits(19661); // 0.30000

pub static LAMBDA: [[NonNegativeFixed; Q]; K] = [
    [
        NonNegativeFixed::from_bits(19661),
        NonNegativeFixed::from_bits(6554),
        NonNegativeFixed::from_bits(0),
        NonNegativeFixed::from_bits(13107),
        NonNegativeFixed::from_bits(26214),
    ], // MeasureCache
    [
        NonNegativeFixed::from_bits(0),
        NonNegativeFixed::from_bits(0),
        NonNegativeFixed::from_bits(58982),
        NonNegativeFixed::from_bits(0),
        NonNegativeFixed::from_bits(0),
    ], // MeasureGeneralizationProof
    [
        NonNegativeFixed::from_bits(26214),
        NonNegativeFixed::from_bits(13107),
        NonNegativeFixed::from_bits(0),
        NonNegativeFixed::from_bits(13107),
        NonNegativeFixed::from_bits(13107),
    ], // MeasureRetrieval
    [
        NonNegativeFixed::from_bits(13107),
        NonNegativeFixed::from_bits(13107),
        NonNegativeFixed::from_bits(0),
        NonNegativeFixed::from_bits(13107),
        NonNegativeFixed::from_bits(26214),
    ], // MeasureScheduling
    [
        NonNegativeFixed::from_bits(13107),
        NonNegativeFixed::from_bits(26214),
        NonNegativeFixed::from_bits(0),
        NonNegativeFixed::from_bits(19661),
        NonNegativeFixed::from_bits(6554),
    ], // MeasureSearch
];

pub static OBJECT_REGISTRY: [PackedSemanticState; N] = [
    // GenArtifact_A (cmca:GenArtifact_A)
    PackedSemanticState {
        id: 0,
        factors: [
            NonNegativeFixed::from_bits(39322),  // accessFrequency: 0.60000
            NonNegativeFixed::from_bits(327680), // businessValue: 5.00000
            NonNegativeFixed::from_bits(49152),  // recomputationCost: 0.75000
            NonNegativeFixed::from_bits(6554),   // retrievalDemand: 0.10000
            NonNegativeFixed::from_bits(6554),   // schedulingDemand: 0.10000
            NonNegativeFixed::from_bits(6554),   // searchDemand: 0.10000
            NonNegativeFixed::from_bits(65536),  // standing: 1.00000
            NonNegativeFixed::from_bits(65536),  // validity: 1.00000
            NonNegativeFixed::from_bits(16384),  // verificationCost: 0.25000
            NonNegativeFixed::from_bits(327680), // downstreamConsequence: 5.00000
        ],
    },
    // GenArtifact_B (cmca:GenArtifact_B)
    PackedSemanticState {
        id: 1,
        factors: [
            NonNegativeFixed::from_bits(39322),  // accessFrequency: 0.60000
            NonNegativeFixed::from_bits(327680), // businessValue: 5.00000
            NonNegativeFixed::from_bits(16384),  // recomputationCost: 0.25000
            NonNegativeFixed::from_bits(6554),   // retrievalDemand: 0.10000
            NonNegativeFixed::from_bits(6554),   // schedulingDemand: 0.10000
            NonNegativeFixed::from_bits(6554),   // searchDemand: 0.10000
            NonNegativeFixed::from_bits(65536),  // standing: 1.00000
            NonNegativeFixed::from_bits(65536),  // validity: 1.00000
            NonNegativeFixed::from_bits(49152),  // verificationCost: 0.75000
            NonNegativeFixed::from_bits(327680), // downstreamConsequence: 5.00000
        ],
    },
    // GenObj_Activity (cmca:GenObj_Activity)
    PackedSemanticState {
        id: 2,
        factors: [
            NonNegativeFixed::from_bits(26214),    // accessFrequency: 0.40000
            NonNegativeFixed::from_bits(0),        // businessValue: 0.00000
            NonNegativeFixed::from_bits(26214),    // recomputationCost: 0.40000
            NonNegativeFixed::from_bits(26214),    // retrievalDemand: 0.40000
            NonNegativeFixed::from_bits(26214),    // schedulingDemand: 0.40000
            NonNegativeFixed::from_bits(26214),    // searchDemand: 0.40000
            NonNegativeFixed::from_bits(65536),    // standing: 1.00000
            NonNegativeFixed::from_bits(65536),    // validity: 1.00000
            NonNegativeFixed::from_bits(26214),    // verificationCost: 0.40000
            NonNegativeFixed::from_bits(32768000), // downstreamConsequence: 500.00000
        ],
    },
    // GenObj_Deployment (cmca:GenObj_Deployment)
    PackedSemanticState {
        id: 3,
        factors: [
            NonNegativeFixed::from_bits(26214),    // accessFrequency: 0.40000
            NonNegativeFixed::from_bits(0),        // businessValue: 0.00000
            NonNegativeFixed::from_bits(26214),    // recomputationCost: 0.40000
            NonNegativeFixed::from_bits(26214),    // retrievalDemand: 0.40000
            NonNegativeFixed::from_bits(26214),    // schedulingDemand: 0.40000
            NonNegativeFixed::from_bits(26214),    // searchDemand: 0.40000
            NonNegativeFixed::from_bits(65536),    // standing: 1.00000
            NonNegativeFixed::from_bits(65536),    // validity: 1.00000
            NonNegativeFixed::from_bits(26214),    // verificationCost: 0.40000
            NonNegativeFixed::from_bits(32768000), // downstreamConsequence: 500.00000
        ],
    },
    // GenObj_Obligation (cmca:GenObj_Obligation)
    PackedSemanticState {
        id: 4,
        factors: [
            NonNegativeFixed::from_bits(26214),    // accessFrequency: 0.40000
            NonNegativeFixed::from_bits(0),        // businessValue: 0.00000
            NonNegativeFixed::from_bits(26214),    // recomputationCost: 0.40000
            NonNegativeFixed::from_bits(26214),    // retrievalDemand: 0.40000
            NonNegativeFixed::from_bits(26214),    // schedulingDemand: 0.40000
            NonNegativeFixed::from_bits(26214),    // searchDemand: 0.40000
            NonNegativeFixed::from_bits(65536),    // standing: 1.00000
            NonNegativeFixed::from_bits(65536),    // validity: 1.00000
            NonNegativeFixed::from_bits(26214),    // verificationCost: 0.40000
            NonNegativeFixed::from_bits(32768000), // downstreamConsequence: 500.00000
        ],
    },
    // GenObj_Outcome (cmca:GenObj_Outcome)
    PackedSemanticState {
        id: 5,
        factors: [
            NonNegativeFixed::from_bits(26214),    // accessFrequency: 0.40000
            NonNegativeFixed::from_bits(0),        // businessValue: 0.00000
            NonNegativeFixed::from_bits(26214),    // recomputationCost: 0.40000
            NonNegativeFixed::from_bits(26214),    // retrievalDemand: 0.40000
            NonNegativeFixed::from_bits(26214),    // schedulingDemand: 0.40000
            NonNegativeFixed::from_bits(26214),    // searchDemand: 0.40000
            NonNegativeFixed::from_bits(65536),    // standing: 1.00000
            NonNegativeFixed::from_bits(65536),    // validity: 1.00000
            NonNegativeFixed::from_bits(26214),    // verificationCost: 0.40000
            NonNegativeFixed::from_bits(32768000), // downstreamConsequence: 500.00000
        ],
    },
    // GenObj_Single (cmca:GenObj_Single)
    PackedSemanticState {
        id: 6,
        factors: [
            NonNegativeFixed::from_bits(45875),   // accessFrequency: 0.70000
            NonNegativeFixed::from_bits(3276800), // businessValue: 50.00000
            NonNegativeFixed::from_bits(52429),   // recomputationCost: 0.80000
            NonNegativeFixed::from_bits(45875),   // retrievalDemand: 0.70000
            NonNegativeFixed::from_bits(13107),   // schedulingDemand: 0.20000
            NonNegativeFixed::from_bits(19661),   // searchDemand: 0.30000
            NonNegativeFixed::from_bits(65536),   // standing: 1.00000
            NonNegativeFixed::from_bits(65536),   // validity: 1.00000
            NonNegativeFixed::from_bits(13107),   // verificationCost: 0.20000
            NonNegativeFixed::from_bits(3276800), // downstreamConsequence: 50.00000
        ],
    },
    // GenObj_Value (cmca:GenObj_Value)
    PackedSemanticState {
        id: 7,
        factors: [
            NonNegativeFixed::from_bits(26214),    // accessFrequency: 0.40000
            NonNegativeFixed::from_bits(32768000), // businessValue: 500.00000
            NonNegativeFixed::from_bits(26214),    // recomputationCost: 0.40000
            NonNegativeFixed::from_bits(26214),    // retrievalDemand: 0.40000
            NonNegativeFixed::from_bits(26214),    // schedulingDemand: 0.40000
            NonNegativeFixed::from_bits(26214),    // searchDemand: 0.40000
            NonNegativeFixed::from_bits(65536),    // standing: 1.00000
            NonNegativeFixed::from_bits(65536),    // validity: 1.00000
            NonNegativeFixed::from_bits(26214),    // verificationCost: 0.40000
            NonNegativeFixed::from_bits(32768000), // downstreamConsequence: 500.00000
        ],
    },
    // Obj_GeneralizationProof (cmca:Obj_GeneralizationProof)
    PackedSemanticState {
        id: 8,
        factors: [
            NonNegativeFixed::from_bits(32768),   // accessFrequency: 0.50000
            NonNegativeFixed::from_bits(3276800), // businessValue: 50.00000
            NonNegativeFixed::from_bits(6554),    // recomputationCost: 0.10000
            NonNegativeFixed::from_bits(45875),   // retrievalDemand: 0.70000
            NonNegativeFixed::from_bits(52429),   // schedulingDemand: 0.80000
            NonNegativeFixed::from_bits(39322),   // searchDemand: 0.60000
            NonNegativeFixed::from_bits(19661),   // standing: 0.30000
            NonNegativeFixed::from_bits(26214),   // validity: 0.40000
            NonNegativeFixed::from_bits(13107),   // verificationCost: 0.20000
            NonNegativeFixed::from_bits(3276800), // downstreamConsequence: 50.00000
        ],
    },
];

pub static LENS_REGISTRY: [LensSpec; Q] = [
    // LensCoverage (cmca:LensCoverage)
    LensSpec {
        id: 0,
        q: SignedFixed::from_bits(0),
    },
    // LensExploitation (cmca:LensExploitation)
    LensSpec {
        id: 1,
        q: SignedFixed::from_bits(131072),
    },
    // LensGeneralizationProof (cmca:LensGeneralizationProof)
    LensSpec {
        id: 2,
        q: SignedFixed::from_bits(98304),
    },
    // LensProportional (cmca:LensProportional)
    LensSpec {
        id: 3,
        q: SignedFixed::from_bits(65536),
    },
    // LensRare (cmca:LensRare)
    LensSpec {
        id: 4,
        q: SignedFixed::from_bits(-65536),
    },
];