Skip to content

Commit 3044d58

Browse files
committed
Merge remote-tracking branch 'origin/master' into release
2 parents 022eda8 + 5e7a593 commit 3044d58

File tree

3 files changed

+12
-0
lines changed

3 files changed

+12
-0
lines changed

kevm-pyk/src/kevm_pyk/__main__.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -365,6 +365,7 @@ def create_kcfg_explore() -> KCFGExplore:
365365
max_frontier_parallel=options.max_frontier_parallel,
366366
force_sequential=options.force_sequential,
367367
assume_defined=options.assume_defined,
368+
optimize_kcfg=options.optimize_kcfg,
368369
)
369370
end_time = time.time()
370371
_LOGGER.info(f'Proof timing {proof_problem.id}: {end_time - start_time}s')

kevm-pyk/src/kevm_pyk/cli.py

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -381,6 +381,7 @@ class KProveOptions(Options):
381381
direct_subproof_rules: bool
382382
maintenance_rate: int
383383
assume_defined: bool
384+
optimize_kcfg: bool
384385

385386
@staticmethod
386387
def default() -> dict[str, Any]:
@@ -390,6 +391,7 @@ def default() -> dict[str, Any]:
390391
'direct_subproof_rules': False,
391392
'maintenance_rate': 1,
392393
'assume_defined': False,
394+
'optimize_kcfg': False,
393395
}
394396

395397

@@ -850,6 +852,13 @@ def kprove_args(self) -> ArgumentParser:
850852
action='store_true',
851853
help='Use the implication check of the Booster (experimental).',
852854
)
855+
args.add_argument(
856+
'--optimize-kcfg',
857+
dest='optimize_kcfg',
858+
default=None,
859+
action='store_true',
860+
help='Optimize the constructed KCFG on-the-fly.',
861+
)
853862
return args
854863

855864
@cached_property

kevm-pyk/src/kevm_pyk/utils.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -115,6 +115,7 @@ def run_prover(
115115
maintenance_rate: int = 1,
116116
assume_defined: bool = False,
117117
extra_module: KFlatModule | None = None,
118+
optimize_kcfg: bool = False,
118119
) -> bool:
119120
prover: APRProver | ImpliesProver
120121
try:
@@ -131,6 +132,7 @@ def create_prover() -> APRProver:
131132
direct_subproof_rules=direct_subproof_rules,
132133
assume_defined=assume_defined,
133134
extra_module=extra_module,
135+
optimize_kcfg=optimize_kcfg,
134136
)
135137

136138
def update_status_bar(_proof: Proof) -> None:

0 commit comments

Comments
 (0)