I noticed the new codes about autodiff at tir level. Most of the code is clear but one implementation detail is confusing.
File src/te/autodiff/jacobian.cc
line 182-270. Why does the new ReduceNode need to return original values? Does it mean that during backward process, some forward computation will be re-done for some reason?