Skip to content

Commit e9ef36b

Browse files
remove ProgramComponent and make the number of rows in the table dynamic
1 parent 1733c8e commit e9ef36b

17 files changed

Lines changed: 377 additions & 1377 deletions

File tree

stwo_cairo_prover/crates/cairo-air/src/cairo_components.rs

Lines changed: 7 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -19,13 +19,13 @@ use crate::components::{
1919
pedersen_aggregator_window_bits_18, pedersen_aggregator_window_bits_9, pedersen_builtin,
2020
pedersen_builtin_narrow_windows, pedersen_points_table_window_bits_18,
2121
pedersen_points_table_window_bits_9, poseidon_3_partial_rounds_chain, poseidon_aggregator,
22-
poseidon_builtin, poseidon_full_round_chain, poseidon_round_keys, program_component,
23-
qm_31_add_mul_opcode, range_check96_builtin, range_check_11, range_check_12, range_check_18,
24-
range_check_20, range_check_252_width_27, range_check_3_3_3_3_3, range_check_3_6_6_3,
25-
range_check_4_3, range_check_4_4, range_check_4_4_4_4, range_check_6, range_check_7_2_5,
26-
range_check_8, range_check_9_9, range_check_builtin, ret_opcode, triple_xor_32,
27-
verify_bitwise_xor_12, verify_bitwise_xor_4, verify_bitwise_xor_7, verify_bitwise_xor_8,
28-
verify_bitwise_xor_9, verify_instruction, verify_program,
22+
poseidon_builtin, poseidon_full_round_chain, poseidon_round_keys, qm_31_add_mul_opcode,
23+
range_check96_builtin, range_check_11, range_check_12, range_check_18, range_check_20,
24+
range_check_252_width_27, range_check_3_3_3_3_3, range_check_3_6_6_3, range_check_4_3,
25+
range_check_4_4, range_check_4_4_4_4, range_check_6, range_check_7_2_5, range_check_8,
26+
range_check_9_9, range_check_builtin, ret_opcode, triple_xor_32, verify_bitwise_xor_12,
27+
verify_bitwise_xor_4, verify_bitwise_xor_7, verify_bitwise_xor_8, verify_bitwise_xor_9,
28+
verify_instruction, verify_program,
2929
};
3030
use crate::relations::CommonLookupElements;
3131

@@ -67,7 +67,6 @@ pub struct CairoComponents {
6767
pub ec_op_builtin: Option<ec_op_builtin::Component>,
6868
pub partial_ec_mul_generic: Option<partial_ec_mul_generic::Component>,
6969
pub verify_program: Option<verify_program::Component>,
70-
pub program_component: Option<program_component::Component>,
7170
pub pedersen_aggregator_window_bits_18: Option<pedersen_aggregator_window_bits_18::Component>,
7271
pub partial_ec_mul_window_bits_18: Option<partial_ec_mul_window_bits_18::Component>,
7372
pub pedersen_points_table_window_bits_18:
@@ -528,16 +527,6 @@ impl CairoComponents {
528527
interaction_claim.verify_program.unwrap().claimed_sum,
529528
)
530529
});
531-
let program_component_component = cairo_claim.program_component.map(|program_component| {
532-
program_component::Component::new(
533-
tree_span_provider,
534-
program_component::Eval {
535-
claim: program_component,
536-
common_lookup_elements: common_lookup_elements.clone(),
537-
},
538-
interaction_claim.program_component.unwrap().claimed_sum,
539-
)
540-
});
541530
let pedersen_aggregator_window_bits_18_component = cairo_claim
542531
.pedersen_aggregator_window_bits_18
543532
.map(|pedersen_aggregator_window_bits_18| {
@@ -968,7 +957,6 @@ impl CairoComponents {
968957
ec_op_builtin: ec_op_builtin_component,
969958
partial_ec_mul_generic: partial_ec_mul_generic_component,
970959
verify_program: verify_program_component,
971-
program_component: program_component_component,
972960
pedersen_aggregator_window_bits_18: pedersen_aggregator_window_bits_18_component,
973961
partial_ec_mul_window_bits_18: partial_ec_mul_window_bits_18_component,
974962
pedersen_points_table_window_bits_18: pedersen_points_table_window_bits_18_component,
@@ -1117,9 +1105,6 @@ impl CairoComponents {
11171105
if let Some(component) = &self.verify_program {
11181106
vec.push(component as &dyn Component);
11191107
}
1120-
if let Some(component) = &self.program_component {
1121-
vec.push(component as &dyn Component);
1122-
}
11231108
if let Some(component) = &self.pedersen_aggregator_window_bits_18 {
11241109
vec.push(component as &dyn Component);
11251110
}
@@ -1450,13 +1435,6 @@ impl Display for CairoComponents {
14501435
indented_component_display(component)
14511436
)?;
14521437
}
1453-
if let Some(ref component) = self.program_component {
1454-
writeln!(
1455-
f,
1456-
"ProgramComponent: {}",
1457-
indented_component_display(component)
1458-
)?;
1459-
}
14601438
if let Some(ref component) = self.pedersen_aggregator_window_bits_18 {
14611439
writeln!(
14621440
f,

stwo_cairo_prover/crates/cairo-air/src/claims.rs

Lines changed: 0 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,6 @@ pub struct CairoClaim {
5454
pub ec_op_builtin: Option<ec_op_builtin::Claim>,
5555
pub partial_ec_mul_generic: Option<partial_ec_mul_generic::Claim>,
5656
pub verify_program: Option<verify_program::Claim>,
57-
pub program_component: Option<program_component::Claim>,
5857
pub pedersen_aggregator_window_bits_18: Option<pedersen_aggregator_window_bits_18::Claim>,
5958
pub partial_ec_mul_window_bits_18: Option<partial_ec_mul_window_bits_18::Claim>,
6059
pub pedersen_points_table_window_bits_18: Option<pedersen_points_table_window_bits_18::Claim>,
@@ -518,9 +517,6 @@ impl CairoClaim {
518517
self.verify_program
519518
.as_ref()
520519
.inspect(|c| log_sizes_list.push(c.log_sizes()));
521-
self.program_component
522-
.as_ref()
523-
.inspect(|c| log_sizes_list.push(c.log_sizes()));
524520
self.pedersen_aggregator_window_bits_18
525521
.as_ref()
526522
.inspect(|c| log_sizes_list.push(c.log_sizes()));
@@ -883,13 +879,6 @@ impl CairoClaim {
883879
component_log_sizes.push(0_u32);
884880
component_enable_bits.push(false);
885881
}
886-
if let Some(_c) = self.program_component {
887-
component_log_sizes.push(program_component::LOG_SIZE);
888-
component_enable_bits.push(true);
889-
} else {
890-
component_log_sizes.push(0_u32);
891-
component_enable_bits.push(false);
892-
}
893882
if let Some(c) = self.pedersen_aggregator_window_bits_18 {
894883
component_log_sizes.push(c.log_size);
895884
component_enable_bits.push(true);
@@ -1165,7 +1154,6 @@ pub struct CairoInteractionClaim {
11651154
pub ec_op_builtin: Option<ec_op_builtin::InteractionClaim>,
11661155
pub partial_ec_mul_generic: Option<partial_ec_mul_generic::InteractionClaim>,
11671156
pub verify_program: Option<verify_program::InteractionClaim>,
1168-
pub program_component: Option<program_component::InteractionClaim>,
11691157
pub pedersen_aggregator_window_bits_18:
11701158
Option<pedersen_aggregator_window_bits_18::InteractionClaim>,
11711159
pub partial_ec_mul_window_bits_18: Option<partial_ec_mul_window_bits_18::InteractionClaim>,
@@ -1402,11 +1390,6 @@ impl CairoInteractionClaim {
14021390
} else {
14031391
claimed_sums.push(SecureField::zero());
14041392
}
1405-
if let Some(c) = self.program_component {
1406-
claimed_sums.push(c.claimed_sum);
1407-
} else {
1408-
claimed_sums.push(SecureField::zero());
1409-
}
14101393
if let Some(c) = self.pedersen_aggregator_window_bits_18 {
14111394
claimed_sums.push(c.claimed_sum);
14121395
} else {
@@ -1735,9 +1718,6 @@ pub fn lookup_sum(
17351718
interaction_claim.verify_program.as_ref().inspect(|ic| {
17361719
sum += ic.claimed_sum;
17371720
});
1738-
interaction_claim.program_component.as_ref().inspect(|ic| {
1739-
sum += ic.claimed_sum;
1740-
});
17411721
interaction_claim
17421722
.pedersen_aggregator_window_bits_18
17431723
.as_ref()

stwo_cairo_prover/crates/cairo-air/src/components/mod.rs

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -86,5 +86,4 @@ pub(crate) fn indented_component_display<E: FrameworkEval>(
8686
.map(|line| format!("\t{line}"))
8787
.join("\n")
8888
}
89-
pub mod program_component;
9089
pub mod verify_program;

stwo_cairo_prover/crates/cairo-air/src/components/prelude.rs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ pub use stwo::core::fields::m31::M31;
44
pub use stwo::core::fields::qm31::{SecureField, SECURE_EXTENSION_DEGREE};
55
pub use stwo::core::pcs::TreeVec;
66
pub use stwo_cairo_common::preprocessed_columns::preprocessed_trace::{PreProcessedColumn, Seq};
7+
pub use stwo_cairo_common::preprocessed_columns::program::ProgramColumn;
78
pub use stwo_cairo_serialize::{CairoDeserialize, CairoSerialize};
89
pub use stwo_constraint_framework::preprocessed_columns::PreProcessedColumnId;
910
pub use stwo_constraint_framework::{EvalAtRow, FrameworkComponent, FrameworkEval, RelationEntry};

stwo_cairo_prover/crates/cairo-air/src/components/program_component.rs

Lines changed: 0 additions & 204 deletions
This file was deleted.

0 commit comments

Comments
 (0)