lean2/src/library/rewriter
Soonho Kong 1d76a6f71d feat(library/rewriter): add rewrite_* functions
rewrite_* functions take the rewriting results of the sub-components and
construct the rewriting result for the main component.

For instance, rewrite_app function takes env, ctx, and the value v s.t.

v = (e_0 e_1 ... e_n)

and the rewriting results for e_i's as a vector(buffer)

(e'_0, pf_0 -- proof of e_0 = e'_0)
(e'_1, pf_1 -- proof of e_1 = e'_1)
...
(e'_n, pf_n -- proof of e_n = e'_n).

Then rewrite_app function construct the new v'

v' = (e'_0 e'_1 ... e'_n)

and the proof of v = v' which is constructed with pf_i's.

These functions are used in the component rewriters such as app_RW and
let_type_RW, as well as more complicated rewriters such as depth
rewriter.
2013-11-30 02:25:29 -05:00
..
CMakeLists.txt Rename 'rewrite' to 'Rewriter', change type of rewriter::operator() 2013-09-25 15:38:16 -07:00
fo_match.cpp refactor(kernel): move printer and formatter objects to the kernel 2013-10-22 08:15:36 -07:00
fo_match.h refactor(kernel): move printer and formatter objects to the kernel 2013-10-22 08:15:36 -07:00
rewriter.cpp feat(library/rewriter): add rewrite_* functions 2013-11-30 02:25:29 -05:00
rewriter.h feat(library/rewriter): add rewrite_* functions 2013-11-30 02:25:29 -05:00