1 #ifndef __STAN__AGRAD__REV__OPERATOR_SUBTRACTION_HPP__
2 #define __STAN__AGRAD__REV__OPERATOR_SUBTRACTION_HPP__
13 class subtract_vv_vari :
public op_vv_vari {
15 subtract_vv_vari(vari* avi, vari* bvi) :
16 op_vv_vari(avi->val_ - bvi->val_, avi, bvi) {
24 class subtract_vd_vari :
public op_vd_vari {
26 subtract_vd_vari(vari* avi,
double b) :
27 op_vd_vari(avi->val_ - b, avi, b) {
34 class subtract_dv_vari :
public op_dv_vari {
36 subtract_dv_vari(
double a, vari* bvi) :
37 op_dv_vari(a - bvi->val_, a, bvi) {
59 inline var
operator-(
const var& a,
const var& b) {
60 return var(
new subtract_vv_vari(a.vi_,b.vi_));
77 return var(
new subtract_vd_vari(a.
vi_,b));
92 return var(
new subtract_dv_vari(a,b.
vi_));