Left fold over sequence.
(f: FuncDeclRef, init: ExprRef, s: ExprRef)
| 3971 | |
| 3972 | |
| 3973 | def SeqFoldLeft(f: FuncDeclRef, init: ExprRef, s: ExprRef) -> ExprRef: |
| 3974 | """Left fold over sequence.""" |
| 3975 | merged = init._vars | s._vars | frozenset([(f._name, f._ast_sort)]) |
| 3976 | return ExprRef( |
| 3977 | AppNode(_AstVar("seq.foldl"), (_AstVar(f._name), init._ast, s._ast)), |
| 3978 | init._sort, |
| 3979 | merged, |
| 3980 | ) |
| 3981 | |
| 3982 | |
| 3983 | def SeqFoldLeftI(f: FuncDeclRef, init: ExprRef, s: ExprRef) -> ExprRef: |