Template metaprogramming is a popular technique for implementing compile time mechanisms for numerical computing. We demonstrate how expression templates can be used for compile time symbolic differentiation of algebraic expressions in C++ computer programs. Given a positive integer $N$ and an algebraic function of multiple variables, the compiler generates executable code for the $N$th partial derivatives of the function. Compile-time simplification of the derivative expressions is achieved using recursive templates. A detailed analysis indicates that current C++ compiler technology is already sufficient for practical use of our results, and highlights a number of issues where further improvements may be desirable.


翻译:模板元方案绘制是实施数字计算时间机制的流行技术。 我们演示了如何使用表达式模板来汇编C++计算机程序对代数表达式的时间符号区分。 鉴于正整数$N$和多个变量的代数函数, 编译器生成了该函数第几个部分衍生物的可执行代码。 使用循环模板可以实现衍生表达式的汇编- 时间简化。 详细分析显示, 当前的 C++ 编译器技术已经足以实际使用我们的结果, 并突出一些值得进一步改进的问题 。

0
下载
关闭预览

相关内容

开源书:PyTorch深度学习起步
专知会员服务
51+阅读 · 2019年10月11日
强化学习最新教程,17页pdf
专知会员服务
182+阅读 · 2019年10月11日
2019年机器学习框架回顾
专知会员服务
36+阅读 · 2019年10月11日
机器学习入门的经验与建议
专知会员服务
94+阅读 · 2019年10月10日
Transferring Knowledge across Learning Processes
CreateAMind
29+阅读 · 2019年5月18日
【TED】生命中的每一年的智慧
英语演讲视频每日一推
10+阅读 · 2019年1月29日
逆强化学习-学习人先验的动机
CreateAMind
16+阅读 · 2019年1月18日
Facebook PyText 在 Github 上开源了
AINLP
7+阅读 · 2018年12月14日
Disentangled的假设的探讨
CreateAMind
9+阅读 · 2018年12月10日
【代码集合】深度强化学习Pytorch实现集锦
机器学习算法与Python学习
8+阅读 · 2018年10月23日
LibRec 精选:基于LSTM的序列推荐实现(PyTorch)
LibRec智能推荐
50+阅读 · 2018年8月27日
条件GAN重大改进!cGANs with Projection Discriminator
CreateAMind
8+阅读 · 2018年2月7日
【推荐】用Python/OpenCV实现增强现实
机器学习研究会
15+阅读 · 2017年11月16日
Learning to Importance Sample in Primary Sample Space
Arxiv
6+阅读 · 2018年5月22日
Arxiv
8+阅读 · 2018年5月1日
Arxiv
10+阅读 · 2018年4月19日
VIP会员
最新内容
美陆军设想无人系统司令部
专知会员服务
0+阅读 · 今天13:45
【博士论文】已对齐人工智能系统的持久脆弱性
专知会员服务
0+阅读 · 今天13:52
扭曲还是编造?视频大语言模型幻觉研究综述
专知会员服务
0+阅读 · 今天13:41
《采用系统思维应对混合战争》125页
专知会员服务
2+阅读 · 今天12:47
战争机器学习:数据生态系统构建(155页)
专知会员服务
6+阅读 · 今天8:10
内省扩散语言模型
专知会员服务
5+阅读 · 4月14日
国外反无人机系统与技术动态
专知会员服务
4+阅读 · 4月14日
相关资讯
Transferring Knowledge across Learning Processes
CreateAMind
29+阅读 · 2019年5月18日
【TED】生命中的每一年的智慧
英语演讲视频每日一推
10+阅读 · 2019年1月29日
逆强化学习-学习人先验的动机
CreateAMind
16+阅读 · 2019年1月18日
Facebook PyText 在 Github 上开源了
AINLP
7+阅读 · 2018年12月14日
Disentangled的假设的探讨
CreateAMind
9+阅读 · 2018年12月10日
【代码集合】深度强化学习Pytorch实现集锦
机器学习算法与Python学习
8+阅读 · 2018年10月23日
LibRec 精选:基于LSTM的序列推荐实现(PyTorch)
LibRec智能推荐
50+阅读 · 2018年8月27日
条件GAN重大改进!cGANs with Projection Discriminator
CreateAMind
8+阅读 · 2018年2月7日
【推荐】用Python/OpenCV实现增强现实
机器学习研究会
15+阅读 · 2017年11月16日
Top
微信扫码咨询专知VIP会员