@@ -40,8 +40,8 @@ async def transform(self) -> str:
4040 str_sum = await self .sum ()
4141 self .ctc_domain += f"(= { file_risk_name } { str_sum } )"
4242 for indirect_var in self .indirect_vars :
43- self .var_domain .add (f"(declare-const { indirect_var } Int)" )
44- self .var_domain .add (f"(declare-const impact_{ indirect_var } Real)" )
43+ self .var_domain .add (f"(declare-const | { indirect_var } | Int)" )
44+ self .var_domain .add (f"(declare-const | impact_{ indirect_var } | Real)" )
4545 model_text = f"{ ' ' .join (self .var_domain )} (assert (and { self .ctc_domain } ))"
4646 self .domain = parse_smt2_string (model_text )
4747 self .func_obj = Real (file_risk_name )
@@ -52,10 +52,10 @@ async def transform_direct_package(self, require: dict[str, Any]) -> None:
5252 filtered_versions = await filter_versions (self .node_type , self .source_data ["have" ][require ["package" ]], require ["constraints" ])
5353 versions_impacts : dict [int , int ] = {version .get ("serial_number" ): version [self .aggregator ] for version in filtered_versions }
5454 versions_names = list (versions_impacts .keys ())
55- self .directs .append (require ["package" ])
56- var_impact = f"impact_{ require ['package' ]} "
55+ self .directs .append (f"| { require ["package" ]} |" )
56+ var_impact = f"| impact_{ require ['package' ]} | "
5757 self .impacts .add (var_impact )
58- self .var_domain .add (f"(declare-const { require ['package' ]} Int)" )
58+ self .var_domain .add (f"(declare-const | { require ['package' ]} | Int)" )
5959 self .var_domain .add (f"(declare-const { var_impact } Real)" )
6060 await self .build_direct_contraint (
6161 require ["package" ], versions_names
@@ -85,7 +85,7 @@ async def transform_versions(self, versions: dict[int, int], var: str, require:
8585 ):
8686 _default = {}
8787 if require :
88- self .impacts .add (f"impact_{ require ['package' ]} " )
88+ self .impacts .add (f"| impact_{ require ['package' ]} | " )
8989 self .indirect_vars .add (var )
9090 self .indirect_vars .add (require ["parent_version_name" ])
9191 _default = {.0 : {- 1 }}
@@ -119,13 +119,13 @@ async def build_indirect_constraints(self) -> None:
119119 self .ctc_domain += f"(=> { await self .group_versions (parent , list (parent_versions ), True )} { versions } ) "
120120 for child , _ in self .parents .items ():
121121 for parent , parent_versions in _ .items ():
122- self .ctc_domain += f"(=> (not { await self .group_versions (parent , list (parent_versions ), True )} ) (= { child } -1)) "
122+ self .ctc_domain += f"(=> (not { await self .group_versions (parent , list (parent_versions ), True )} ) (= | { child } | -1)) "
123123
124124
125125 async def build_impact_constraints (self ) -> None :
126126 for var , _ in self .ctcs .items ():
127127 for impact , versions in _ .items ():
128- self .ctc_domain += f"(=> { await self .group_versions (var , list (versions ), True )} (= impact_{ var } { impact } )) "
128+ self .ctc_domain += f"(=> { await self .group_versions (var , list (versions ), True )} (= | impact_{ var } | { impact } )) "
129129
130130
131131 async def group_versions (
@@ -143,9 +143,9 @@ async def group_versions(
143143 if versions [i ] == versions [i - 1 ] + step :
144144 current_group .append (versions [i ])
145145 else :
146- constraints .append (await self .create_constraint_for_group (var , current_group , ascending ))
146+ constraints .append (await self .create_constraint_for_group (f"| { var } |" , current_group , ascending ))
147147 current_group = [versions [i ]]
148- constraints .append (await self .create_constraint_for_group (var , current_group , ascending ))
148+ constraints .append (await self .create_constraint_for_group (f"| { var } |" , current_group , ascending ))
149149 return constraints [0 ] if len (constraints ) == 1 else f"(or { ' ' .join (constraints )} )"
150150
151151
0 commit comments