@@ -5291,6 +5291,27 @@ theorem supportedStmtList_safe_of_state_effect_closed
52915291 | setStructMember2Single =>
52925292 simp [stmtListTouchesUnsupportedStateSurface,
52935293 stmtTouchesUnsupportedStateSurface] at hState
5294+ | @forEachLiteralBounded scope varName body _ _ _ =>
5295+ cases body with
5296+ | nil =>
5297+ exact Compiler.Proofs.YulGeneration.Backends.BridgedSafeStmts.externalRecursiveRawLog
5298+ (Compiler.Proofs.YulGeneration.Backends.BridgedSourceExternalRecursiveBodyWithRawLogStmts.cons
5299+ (Compiler.Proofs.YulGeneration.Backends.BridgedSourceExternalRecursiveBodyWithRawLogStmt.forEach
5300+ _ _ _
5301+ (Compiler.Proofs.YulGeneration.Backends.BridgedSourceExpr.literal _)
5302+ Compiler.Proofs.YulGeneration.Backends.BridgedSourceExternalRecursiveBodyWithRawLogStmts.nil)
5303+ Compiler.Proofs.YulGeneration.Backends.BridgedSourceExternalRecursiveBodyWithRawLogStmts.nil)
5304+ | cons _ _ =>
5305+ simp [stmtListTouchesUnsupportedStateSurface,
5306+ stmtTouchesUnsupportedStateSurface] at hState
5307+ | forEachLiteralEmpty _ =>
5308+ exact Compiler.Proofs.YulGeneration.Backends.BridgedSafeStmts.externalRecursiveRawLog
5309+ (Compiler.Proofs.YulGeneration.Backends.BridgedSourceExternalRecursiveBodyWithRawLogStmts.cons
5310+ (Compiler.Proofs.YulGeneration.Backends.BridgedSourceExternalRecursiveBodyWithRawLogStmt.forEach
5311+ _ _ _
5312+ (Compiler.Proofs.YulGeneration.Backends.BridgedSourceExpr.literal _)
5313+ Compiler.Proofs.YulGeneration.Backends.BridgedSourceExternalRecursiveBodyWithRawLogStmts.nil)
5314+ Compiler.Proofs.YulGeneration.Backends.BridgedSourceExternalRecursiveBodyWithRawLogStmts.nil)
52945315 | requireClause clause _ ih =>
52955316 simpa using
52965317 Compiler.Proofs.YulGeneration.Backends.BridgedSafeStmts.append
@@ -5557,6 +5578,28 @@ theorem supportedStmtList_safe_of_state_except_mapping_writes_stmt_safety
55575578 (Compiler.Proofs.YulGeneration.Backends.bridgedSourceExpr_of_exprCompileCore hKey2)
55585579 (Compiler.Proofs.YulGeneration.Backends.bridgedSourceExpr_of_exprCompileCore hValue)
55595580 hMapping2 hMembers hFindMember rfl hZero hSlots
5581+ | @forEachLiteralBounded scope varName body _ _ _ =>
5582+ cases body with
5583+ | nil =>
5584+ exact Compiler.Proofs.YulGeneration.Backends.BridgedSafeStmts.externalRecursiveRawLog
5585+ (Compiler.Proofs.YulGeneration.Backends.BridgedSourceExternalRecursiveBodyWithRawLogStmts.cons
5586+ (Compiler.Proofs.YulGeneration.Backends.BridgedSourceExternalRecursiveBodyWithRawLogStmt.forEach
5587+ _ _ _
5588+ (Compiler.Proofs.YulGeneration.Backends.BridgedSourceExpr.literal _)
5589+ Compiler.Proofs.YulGeneration.Backends.BridgedSourceExternalRecursiveBodyWithRawLogStmts.nil)
5590+ Compiler.Proofs.YulGeneration.Backends.BridgedSourceExternalRecursiveBodyWithRawLogStmts.nil)
5591+ | cons _ _ =>
5592+ simp [stmtListTouchesUnsupportedStateSurfaceExceptMappingWrites,
5593+ stmtTouchesUnsupportedStateSurfaceExceptMappingWrites,
5594+ stmtTouchesUnsupportedStateSurface] at hState
5595+ | forEachLiteralEmpty _ =>
5596+ exact Compiler.Proofs.YulGeneration.Backends.BridgedSafeStmts.externalRecursiveRawLog
5597+ (Compiler.Proofs.YulGeneration.Backends.BridgedSourceExternalRecursiveBodyWithRawLogStmts.cons
5598+ (Compiler.Proofs.YulGeneration.Backends.BridgedSourceExternalRecursiveBodyWithRawLogStmt.forEach
5599+ _ _ _
5600+ (Compiler.Proofs.YulGeneration.Backends.BridgedSourceExpr.literal _)
5601+ Compiler.Proofs.YulGeneration.Backends.BridgedSourceExternalRecursiveBodyWithRawLogStmts.nil)
5602+ Compiler.Proofs.YulGeneration.Backends.BridgedSourceExternalRecursiveBodyWithRawLogStmts.nil)
55605603 | @requireClause scope clause rest _ ih =>
55615604 have hTailSafety :
55625605 ∀ stmt ∈ rest, StmtMappingWriteSlotSafe fields stmt := by
0 commit comments