---
title: "Estimation of the value-added/intermediate input substitution elasticities consistent with the GTAP data"
author:
    - Maros Ivanic\footnote{United States Department of Agriculture, Economic Research Service}, Jayson Beckman\footnotemark[1], and Noé J Nava\footnotemark[1]
output: 
  bookdown::pdf_document2:
    toc: false
    toc_depth: 3
    keep_tex:  true
documentclass: jgea
header-includes:
  - \renewcommand{\and}{and}
#fontsize: 11pt
bibliography: references.bib  
editor_options: 
  chunk_output_type: console
abstract: "Elasticities are often a combination of expert decisions and literature estimates---many of which are outdated. Previous efforts have focused on estimating the most commonly used elasticities in economic models (e.g., the Armington elasticity of trade); however, several elasticities still have little empirical basis. The elasticity of substitution between intermediate inputs and value-added is one example, but this elasticity is quite important as it governs producers’ production regimes across sectors and regions reflecting their level of efficiency. We examine and estimate this elasticity for one of the most widely used CGE models (parameter ESUBT in the GTAP model), using the latest five datasets available (2004, 2007, 2011, 2014, and 2017) in the version 11 GTAP database. Our work finds that the default value of zero in GTAP does not reflect the behavior implied by the data. Using our estimates, we propose a set of new values for the short run (about one year), two medium runs (three years and six years) and the long run (i.e., infinite time horizon). We demonstrate the importance of our new estimates using a scenario from the EU Farm to Fork policy where we find that using the estimated elasticities leads to much milder market and welfare impacts, and that these effects are further dampened as the time horizon of the simulation increases."
---

\volume{XX}
\pubyear{2023}
\issueno{X}
\pagerange{xx}{xx} 
\setcounter{page}{1} 

```{r setup, include=FALSE}
knitr::opts_chunk$set(echo = TRUE)

if(!('devtools' %in% .packages(all.available = TRUE)))
  install.packages('devtools')
if(!('HARr' %in% .packages(all.available = TRUE)))
  devtools::install_git('https://github.com/USDA-ERS/MTED-HARr.git')
```

\begin{jelcodes}
C51, C68
\end{jelcodes}

\begin{keywords}
Computable General Equilibrium; Global Trade Analysis Project; GTAP; ESUBT.
\end{keywords}

**Disclaimer:** The findings and conclusions in this article are those of the authors and should not be construed to represent any official USDA or U.S. Government determination or policy.

**Acknowledgment:** We would like to thank Da Zhang and two anonymous reviewers for allowing us to improve the paper greatly through their thoughtful comments.

\newpage

# Introduction

Computable general equilibrium (CGE) models provide simulations that use a general equilibrium structure with actual economic data to solve for the levels of supply, demand and price that support equilibrium across a specified set of markets. These models have become a standard tool of empirical analysis, in particular through the use of the Global Trade Analysis Project (GTAP) in terms of policy analysis such as for biofuels [e.g., @hertel2010; @taheripour2020], the EU’s Farm to Fork Strategy [@beckman2022; @beckman2020] and numerous trade agreements that focus on agriculture. But these models are often difficult to comprehend as they contain a large number of variables and parameters (i.e., elasticities)^[We refer to parameters and elasticities interchangeably here; although parameters are actually what are in the models, and elasticities are what are estimated by econometric models. Often CGE modelers can directly apply an elasticity to a parameter within the CGE model; but, in some instances, the parameters should be calibrated to the elasticity as was laid out in @beckman2011.] and are structurally complex, making it difficult to keep track of all the moving parts [@wing2004]. While the technical tools for analyzing CGE results have greatly improved, which has  allowed modelers to explain their results more fully, there is a strong call for the validation of these models, and one way is to ensure that the elasticities are updated, traceable, and represent real-world behavior [@beckman2011]. Unfortunately, elasticities in CGE models are often a combination of literature estimates and expert decisions.^[Or as stated by @lofgren1994, some of these are guesstimates.] 


As noted above, the elasticities used in GTAP tend to be a mixture of different sources, and those that are based on econometric evidence tend to be somewhat outdated. There has been a big push in the research community to provide updates to some of these, in particular, the source substitution elasticities (i.e., Armington elasticities driving substitution in international trade). The work by @bajzik2020 features a meta-analysis where they collected 3,524 reported estimates of the elasticity (ESUBD---the substitution between domestic and imported goods), noting that this elasticity varies between zero and eight in the literature. The elasticity specified in GTAP ranges from 0.9 to 6.45 for all commodities except natural gas distribution with the value of 17.2.


There have been additional efforts made to increase the flexibility of the standard GTAP model to better represent the current relationship among the data without  reestimating the current elasticity values. For example, researchers have brought in some additional nesting to better describe relationships between sectors and/or regions to allow for higher substitutability of inputs. GTAP-AEZ (Agro-Ecological Zone) incorporates information on land cover and land use, replacing the original value-added input ‘land’ with a composite land modeled as another nest of individual agro-ecological zones [@lee2005]. Similarly, in the case of GTAP-AGR, several additional nests are included to combine all purchased inputs as a single aggregate as well as to separate the use of non-feedstuff and feedstuff in livestock production, among others [@keeney2005]. Of course, any new nesting presents the need to provide additional elasticities, and in the case of the GTAP-AEZ database [@baldos2020], those elasticities are set to -0.2 at the forest/agriculture nest, -0.5 at the crop/pasture nest, and -1 at the crop nest; i.e., they are uniform across all sectors and regions within each nest. In the case of @keeney2005, the elasticity of substitution between value-added and purchased inputs is set between -0.4 and -0.9, varying across regions.^[The estimation elasticities and simulations at regional levels has been used with some success to produce localized effects. For instance, @nava2023 estimate an Armington elasticity of trade for domestic food flows within the United States. Similarly, @beckman2023 estimate climate change-induced yield impacts for U.S. counties that are subsequently inputted in the GTAP-AEZ to study the market implications from climate change in 2036.]

Changing the nesting to incorporate different behavior is one way of approaching the idea of making CGE models represent real-world behavior, but the standard GTAP model continues to be used for a variety of policy applications. As such, it is important to make sure that the parameters in the standard GTAP model represent a best effort to represent real-world behavior. One elasticity that has received little research targeting providing a new estimate is the elasticity of substitution between intermediate inputs and value-added. This elasticity is set to zero in the standard GTAP framework, but researchers have frequently adjusted it to account for the possibility of substitution, in particular, for agriculture [e.g., @beckman2020; @hertel2008;@keeney2005], where the Leontief assumption appears especially inconsistent as shown by the calibration exercise of @hertel2008, or the set of values used by @keeney2005. Keeping this elasticity different from zero is particularly important to scenarios involving changes in agricultural inputs, which would otherwise result is identical changes in output, with no scope for adjustments in the input mix. 

The GTAP database provides a wealth of information that may allow us to tease out various elasticites; in this work, we use the latest five GTAP data sets to recover the elasticities between intermediate inputs and value-added implied by the price variations represented by taxes in the GTAP databases. We show that the elasticities often differ from the assumed elasticity of zero and, in addition, we observe heterogeneity across different sectors. We additionally estimate the  elasticities using the price variations across database versions, finding longer-term elasticities of substitution that are often greater (in absolute values) than the single-year elasticities. We then demonstrate the implications of the updated elasticities for the outcomes of a policy scenario under varying assumptions of the time horizon (e.g., from short run to long run).


# Elasticities in GTAP

CGE models can have hundreds of thousands, if not millions, of elasticities. In the standard GTAP^[Our work focuses on GTAP as its databases are used in most CGE analyses; in addition, the GTAP model is quite popular in policy studies.]  model there are eight behavioral parameters that need to be specified [@hertel2019]. The number of estimates for these parameters vary based on the sectoral and regional aggregation, but there could be a maximum of 56,259 if all the sectors and regions are completely disaggregated.^[To be specific, the parameters noted by ESUBD, ESUBM, ESUBVA, ESUBT, SUBPAR, and INCPAR are by sector and region, so the maximum number of parameters is 65 * 141 = 9,156, based on the version 10 database. ETRAE is endowment specific, so the maximum number of parameters is 8 * 141 = 1,128, and RORFLEX is region specific, so the maximum number of parameters is 141.]  

In terms of the eight behavioral parameters in GTAP, @hertel2019 note that the source substitution elasticities (ESUBD---Armington elasticity of substitution of imports and ESUBM---Armington elasticity of substitution between domestic and imported goods) have for some time been taken from econometric work done by @hertel2007, and before they were sourced from the SALTER model [@jomini1991] that had original econometric work for New Zealand, and synthesized estimates from the literature for the others. The elasticity for ESUBVA in GTAP (the substitution between primary factors in production) is taken from the SALTER model; while ESUBT^[Note that this elasticity is recorded with a reversed sign in the GTAP database] (the elasticity of substitution between intermediates and value-added) is set to zero---which implies that the ratio of intermediates and value-added used in production is fixed. There is no evidence offered as to why the elasticity is set to zero. ETRAE is the elasticity of transformation for sluggish primary factor endowments, and as noted in @hertel2007, the larger the (negative) value the more the supply of factors will be to relative returns. RORFLEX is the expected net rate of return–the smaller the value, the greater the responsiveness of international investment to a change in the rate of return [@hertel2019]. But there is no basis for the current parameter in the model. Finally, GTAP employs the constant difference of elasticities (CDE) function form in the private household demand with the parameters (known as INCPAR and SUBPAR) estimated and calibrated based on the implicit, directly additive demand system (AIDADS) work by @reimer2004 and a subsequent CDE calibration procedure.

In terms of elasticities that are in GTAP, ESUBVA is grounded in supply response and can be readily updated, and SUBPAR and INCPAR are also easy to estimate. However, the elasticity of substitution between intermediate inputs and value-added has received less attention. This is despite the elasticity having great importance because it drives a lot of model behavior when inputs become scarce. That is, a value of zero implies that intermediates and value-added are not substitutable, but this is unlikely as, for example, in agriculture, farmers can apply fertilizers to substitute for land.   

The question of the substitution elasticity is not new. @humphrey1975 estimated the elasticity for a few commodities and considered separability---i.e., testing whether capital and labor are separable from intermediate inputs. He did find that capital and labor inputs were better substitutes for each other than either one was for intermediates---supporting GTAP having separate nests for value-added and intermediate inputs. The MAGNET CGE model used by the Organisation for Economic Co-operation and Development (OECD) has a nesting with fertilizer and land, with the elasticity set to -0.15 for developed countries and -0.50 for others [@bartelings2016].^[It is not quite clear if they move fertilizer from being an intermediate input into the value-added nest, which is one way to approach the problem for agriculture. But, given that the standard GTAP model does not have this structure, we investigate what this elasticity should be---and we do it across all sectors. ] Others have estimated what this elasticity might be for manufacturing. @oberfield2014 estimated the elasticity between intermediates and capital and labor at -0.7 for the U.S. @peter2019 calculate the elasticity for materials, capital and labor in India, and estimate the elasticity at -0.8. The estimate of @fujiy2022, also for India is -0.55. Thus, the current value of zero is likely a dubious estimate. Finally, @koesler2015 notes that if the elasticity between intermediates and value added is very low, then the elasticity of substitution between capital and labor may become less important when assessing a shock to factor supply. We present some of the literature estimates concisely in Table \@ref(tab:overview).



| Source          | Value of input substitution elasticity^[Unlike substitution elasticities in the context of GTAP which are reported with a positive sign, the raw values in literature are reported with the actual, negative sign]       | Note/coverage|
|-----------------|-------------|--------------|
| @fujiy2022      | -0.55       | India; HS-4 commodities|
| @peter2019      | -0.8        | India |
| @oberfield2014  | -0.7        | U.S.; between capital and labor |
| @bartelings2016 | -0.15 (developed); -0.5 | between fertilizer and land |
| @hertel2008     | between -0.5 and -1.5 | Calibrated, not estimated |

Table: \label{tab:overview} Overview of previous estimates of intermediate input/value-added elasticties

The fact that many other authors have found the substitution elasticity between intermediate inputs and value-added significantly is different from zero---the value used in the standard GTAP parameter file---serves as an important motivation of our work to estimate these elasticities consistently and specifically in the GTAP context so that they can be used by other modelers in the future. 

# Empirical strategy
## The elasticity of substitution between intermediate inputs and value-added

The method that we apply in this work to recover the elasticities of substitution between intermediate inputs and value-added closely follows the definition of the elasticity in the GTAP model [@hertel1997], where intermediate inputs individually enter a production CES nest with the aggregation of all  factors into a single value-added input. The model then assumes that the percentage change in the  quantity of each input relative to the total output percentage change is driven by the difference between the changes in the input and output prices, multiplied by the elasticity of substitution. Ignoring any changes in technologies, this relationship (taken from the GTAP model's `VADEMAND` (here, Equation \@ref(vademand)) and `INTDEMAND` (here, Equation \@ref(intdemand)) equations) states:

\begin{equation}
    \mbox{qva}_{j,r} - \mbox{qo}_{j,r} =  - \mbox{ESUBT}_j \left(\mbox{pva}_{j,r} - \mbox{ps}_{j,r}\right)
    \label{vademand}
\end{equation}

where $\mbox{qva}_{j,r}$ is the percent change of quantity of value-added used in the production of commodity $i$ in region $c$, with the percent change in the total output quantity of $\mbox{qo}_{j,r}$; $\mbox{pva}_{j,r}$ is the percent change in the price of the value-added composite and $\mbox{ps}_{j,r}$ is the percent change in the producer price.

Also,

\begin{equation}
    \mbox{qf}_{i,j,r} - \mbox{qo}_{j,r} =  - \mbox{ESUBT}_j \left(\mbox{pf}_{i,j,r} - \mbox{ps}_{j,r}\right)
    \label{intdemand}
\end{equation}

where $\mbox{qf}_{i, j,r}$ is the percent change in the quantity of input $i$ used in the production of commodity $j$ in region $c$, and $\mbox{pf}_{i,j,r}$ is the percent change in its price.

Note that the elasticity value in Equations \@ref(vademand) and \@ref(intdemand) is multiplied by -1, which makes the values of the parameters positive.^[One of the issues in directly estimating the elasticity of substitution implied by Equations \@ref(vademand) and \@ref(intdemand) is that the quantities of output, intermediate inputs and value-added are not typically reported, especially not at the GTAP level of aggregation where many disparate commodities and factors are bundled into single good  and a single value-added input (e.g., combining the number of workers with areas of land).]

Combining the changes in quantities with changes in prices allows us to express Equations  \@ref(vademand) and \@ref(intdemand) in terms of values of inputs and output:

\begin{equation}
    \mbox{vva}_{j,r} - \mbox{vo}_{j,r} =  \left(-\mbox{ESUBT}_j +1 \right) \left(\mbox{pva}_{j,r} - \mbox{ps}_{j,r}\right)
    \label{vademandv}
\end{equation}


and

\begin{equation}
    \mbox{vf}_{i,j,r} - \mbox{vo}_{j,r} =   \left(-\mbox{ESUBT}_j + 1 \right) \left(\mbox{pf}_{i,j,r} - \mbox{ps}_{j,r}\right)
    \label{intdemandv}
\end{equation}

where $\mbox{vva}_{j,r}$ represents the percent change in the value of value-added used ($\mbox{qva}_{j,r} + \mbox{pva}_{j,r}$), $\mbox{vo}_{j,r}$ represents the percentage change of the value of output ($\mbox{qo}_{j,r} + \mbox{ps}_{j,r}$)  and $\mbox{vf}_{i,j,r}$ represents the percent change of the value of intermediate inputs ($\mbox{qf}_{i,j,r}+\mbox{pf}_{i,j,r}$).

While values of output, intermediate inputs and value-added are readily available, such in the GTAP database, the price information is hard to find at the aggregation level of GTAP commodities and regions. To get around the missing price data, we decided to use the information on input and output taxes, which directly impact the input and output prices. Abstracting away from any general equilibrium impacts on the account that individual input markets are small in comparison to the entire commodity sectors, we assume that the input tax translates into a change in the price of the input, and output tax reduces the output price of the commodity in question.


\begin{equation}
    \mbox{vva}_{j,r} - \mbox{vo}_{j,r} =  \left(-\mbox{ESUBT}_j +1 \right) \left(\mbox{tva}_{j,r} + \mbox{to}_{j,r}\right)
    \label{vademandvt}
\end{equation}


and

\begin{equation}
    \mbox{vf}_{i,j,r} - \mbox{vo}_{j,r} =  \left(-\mbox{ESUBT}_j + 1 \right) \left(\mbox{tf}_{i,j,r} + \mbox{to}_{j,r}\right)
    \label{intdemandvt}
\end{equation}

where $\mbox{tva}_{j,r}$ is the percent change in the power of tax applied to value-added used in the production of commodity $j$, $\mbox{tf}_{i,j,r}$ is the percentage change in the power of tax on intermediate input $i$ used in the production of commodity $j$, and  $\mbox{to}_{j,r}$ is the percent change in the power of tax imposed on the sale of commodity $j$.

The final step before estimation involves turning Equations \@ref(vademandvt) and \@ref(intdemandvt), which are expressed in the linear form (i.e., of percentage changes of the levels), into the corresponding levels:


\begin{equation}
    \log(\mbox{VVA}_{j,r}) - \log(\mbox{VO}_{j,r}) =   \left(-\mbox{ESUBT}_j +1 \right) \left(\log(\mbox{TVA}_{j,r}) + \log(\mbox{TO}_{j,r})\right) + C_{j,r}
    \label{vademandvtlog}
\end{equation}


and

\begin{equation}
    \log(\mbox{VF}_{i,j,r}) - \log(\mbox{VO}_{j,r}) =   \left(-\mbox{ESUBT}_j + 1 \right) \left(\log(\mbox{TF}_{i,j,r}) + \log(\mbox{TO}_{j,r})\right) + D_{i,j,r}
    \label{intdemandvtlog}
\end{equation}

where the variable in upper case represent the corresponding levels, e.g., $\mbox{VVA}_{j,r}$ is the value of value-added in the production of commodity $j$ in region $r$, $\mbox{VO}_{j,r}$ is the value of total output, $\mbox{TVA}_{j,r}$ is the power of tax on value-added, $\mbox{TO}_{j,r}$ is the power of tax on output, $\mbox{VF}_{i,j,r}$ is the value of intermediate input $i$ in the production of $j$, $\mbox{TF}_{i,j,r}$ is the power of tax imposed on intermediate input use. Finally, $C_{j,r}$ is a commodity and region specific constant, and $D_{i,j,r}$ is the constant specific to each input $i$ used in the production of commodity $j$ in region $r$.

## Parameter estimation

The formulation of Equations \@ref(vademandvtlog) and \@ref(intdemandvtlog) allows us to proceed to the estimation of Equation \@ref(vademandvtlog) by commodity $j$:

\begin{equation}
    v_{j,r} =   \alpha_j w_{j,r} + E_{r}
    \label{vademandvtest}
\end{equation}

where $v_{j,r}$ is the dependent variable calculated as $\log(\mbox{VVA}_{j,r}) - \log(\mbox{VO}_{j,r})$, $\alpha_j$ is the estimate of the elasticity + 1 for commodity $j$, $w_{j,r}$ is the independent variable calculated as $\left(\log(\mbox{TVA}_{j,r}) + \log(\mbox{TO}_{j,r})\right)$ and, finally, we include a dummy variable $E_{r}$ to represent the constant in the equation.

We can also estimate Equation \@ref(intdemandvtlog) by commodity as follows:

\begin{equation}
    z_{i,j,r} =  \alpha_j u_{i,j,r} + F_{i} + G_{r}
    \label{intdemandvtest}
\end{equation}

where $z_{i,j,r}$ is the dependent variable calculated as $\log(\mbox{VF}_{i,j,r}) - \log(\mbox{VO}_{j,r})$, $\alpha_j$ is the estimate of the elasticity + 1 for commodity $j$, $u_{i,j,r}$ is the independent variable calculated as $\left(\log(\mbox{TF}_{i,j,r}) + \log(\mbox{TO}_{j,r})\right)$; we also include two dummy variables $F_i$ and $G_r$ to decompose the constant term in Equation \@ref(intdemandvtlog) into the product of the region-specific and input-specific constants.

Because the elasticity is the same for Equation \@ref(vademandvtest) as it is for Equation \@ref(intdemandvtest) we include value-added as one of the intermediate inputs. Also, because we perform our estimation on time-series data, we include an additional time-indexed term in each equation to account for possible technological change:

\begin{equation}
    y_{i,j,r,t} =   \alpha_j x_{i,j,r,t} + F_{i} +   G_{r} + H_t + \epsilon_{i,j,r,t}
    \label{eq-one-year}
\end{equation}

where $y_{i,j,r,t}$ is the dependent variable calculated as $\log(\mbox{VVA}_{j,r,t}) - \log(\mbox{VO}_{j,r,t})$ for $i$ = value added, and as $\log(\mbox{VF}_{i,j,r,t}) - \log(\mbox{VO}_{j,r,t})$ for all other inputs $i$; $\alpha_j$ is the estimate of the elasticity + 1 for commodity $j$, $x_{j,r}$ is the independent variable calculated as $\left(\log(\mbox{TVA}_{j,r,t}) + \log(\mbox{TO}_{j,r,t})\right)$ for $i$ = value-added and as $\left(\log(\mbox{TF}_{i,j,r,t}) + \log(\mbox{TO}_{j,r,t})\right)$ for all other intermediate inputs; finally, we include dummy variables $F_{i}$, $G_r$ and $H_t$ to represent the constant in the equation plus its variation over time. 

The inclusion of three fixed effects captured by the terms $F_{i}$, $G_r$ and $H_t$ is allowing us to identify the implication of the price variation under the assumption that the relationship between the relative prices and relative input uses may have a sector specific component (i.e., production functions may differ by commodity, $F_{i}$), a region-specific component (i.e., different regions may have different technologies, $G_r$), and a time-varying technological change ($H_t$).

It is important to note that our identification is based on the reported applied taxes, representing a part of the price variation in the relevant markets. We assume that taxation is independent of other price changes, meaning that we can use the implied price variation due to the taxes as one source of price variation. However, if taxes respond to the changes in prices due to other sources---perhaps if policymakers try to stabilize prices at times of shortage---then this assumption would be violated, leading to potentially biased results. However, we believe that the primary goal of taxation is not price stabilization, at least not for firms, and therefore we believe that estimation using the observed tax variations is appropriate.^[We discuss the implications of the violation of this assumption in more detail in the discussion section below.]


The intuition behind the estimation represented by Equation \@ref(eq-one-year) is that increasing the level of tax on an input associated in the production of the commodity $j$, ceteris paribus, reduces its value used in the total output. Thus, the parameter we are interested in is given by $\alpha_j-1$, representing the elasticity of substitution between inputs and value-added in the production of commodity $j$ (equal to -ESUBT). 

In addition to the specification using the current tax rates (as representations of the price variation in the database representing annual totals), we are also interested in uncovering a longer-term impact of price variation on inputs. To do that, we modify Equation \@ref(eq-one-year) by adding a term representing the change in tax between two and three releases of the GTAP database (typically three or four years):

\begin{equation}
    y_{i,j,r,t} =   \beta_j \left(x_{i,j,r,t} - x_{i,j,r,t-1} \right) + F_{i} +   G_{r} + H_t + \epsilon_{i,j,r,t}
    \label{eq-three-years}
\end{equation}

\begin{equation}
    y_{i,j,r,t} =   \gamma_j \left(x_{i,j,r,t} - x_{i,j,r,t-2} \right) + F_{i} +   G_{r} + H_t + \epsilon_{i,j,r,t}
    \label{eq-six-years}
\end{equation}

where $t$ represents the version of the database, $\beta-1$ represents the elasticity of substitution between two versions (roughly three years), and $\gamma-1$ represents the elasticity of substitution between three versions (roughly six years).



We estimate Equation  \@ref(eq-one-year), \@ref(eq-three-years) and \@ref(eq-six-years)  using the GTAP data as made available by the GTAP Center and described below. The output values at agents' prices are calculated as the value of all intermediate inputs and value added at agents' price ($QO$ = `VIFA`+`VDFA` and `EVFA`). Output value at market prices is calculated as the sum of all uses and exports (`VDFM` + `VDGM` + `VDPM` + `VST` + `VXMD`); the power of output tax is calculated as the ratio of the output at market and agents' prices. The input values for intermediate inputs are taken directly from data sets `VIFA` and `VDFA`, added up for a single input value. Because value-added enters the production nest as a total, we sum the value of value-added in the production for each commodity. The power of tax is calculated by dividing the values at agent's prices and market prices; for intermediate inputs the power of tax is calculate as `(VIFA`+`VDFA`)/(`VIFM`+`VDFM`) for intermediate goods, and as `EVFA`/`VFM` for value added.

An important data cleaning that we apply involves removing any observations where the power of taxation was tiny---between 0.9999 and 1.0001---on the account that the adjustments of the data by the GTAP Center for balancing could introduce minuscule yet spurious taxation data that would add noise to our calculations. The corollary of this assumption is that the values with noticeable taxation have been reviewed and are more likely to represent the true values. 

We run the estimation of Equations \@ref(eq-one-year), \@ref(eq-three-years) and \@ref(eq-six-years)  on the past five GTAP databases (versions 7, 8, 9, 10 and 11)[@aguiar2016; @aguiar2019; @aguiar2022]^[We are aware that the production of the GTAP databases may involve reusing input-output tables, or combining input-output tables obtained at different times (different reference years), and that that there are possible changes in the methodology to calculate the final data across versions. Despite these limitations, we are confident that most of the GTAP data have been properly reviewed, sensibly adjusted and they are therefore suitable for the estimation that we propose.] and all available sectors. The total number of observations after cleaning is 1,651,846 (66 sectors and 160 regions in five database versions) for the estimation of Equation \@ref(eq-one-year), 1,322,056 observations for the estimation of Equation \@ref(eq-three-years) and 989,170 observations for the estimation of Equation \@ref(eq-six-years).

Instead of showing 66 sets of regression results for each commodity and each dummy variable (over 200 rows of data), we only list the obtained estimates of the elasticities of substitution $\alpha$, $\beta$, $\gamma$ (previously defined) along with the estimated standard errors, significance levels^[Showing the significance of the estimate -1 from 0 under normal distribution assumption] in  Tables \@ref(tab:estimates), \@ref(tab:estimates-three-year) and \@ref(tab:estimates-six-year)^[For the definitions of the GTAP sectors in the version 11 GTAP datbase, please see: https://www.gtap.agecon.purdue.edu/databases/v11/v11_sectors.aspx. Sector `cgds` represents capital goods.]. As the tables show, in the vast majority of the cases, our estimates are of the correct sign (negative) and are often statistically different from zero, suggesting that they are different from the existing values used in the GTAP database (i.e., zeros). In the shorter-run results, we obtain positive estimates for natural gas distribution (`gdt`) and oil (`oil`) which could be the result of the fact that  energy sectors are often heavily regulated industries where the substitution of value-added and inputs is not driven my the profit maximizing principles, at least not in the short run.


```{r data-prepration, echo = FALSE }

if (!file.exists('resultsSummaries.rds')) {
  # Read the past five versions of the GTAP database
  GTAPData = Map(function(f)HARr::read_har(sprintf('./V7_flexAgg11Y%s/gsddat.har',f), FALSE, FALSE), c('04','07','11','14','17'))
  

  # common script to calculate the tax on inputs and input/output values
  process = quote({
    tax = (VIFA + VDFA) / (VIFM + VDFM)
    output = apply(VIFA + VDFA, c(2, 3), sum) + apply(EVFA, c(2, 3), sum)
    outputMarket  = VDPM + VDGM + apply(VDFM, c(1,3),sum)+ apply(VXMD,c(1,2),sum)
    outputMarket[dimnames(VST)[[1]],] = outputMarket[dimnames(VST)[[1]],] + VST[,]
    outputTax = output
    outputTax[] = 1
    outputTax[dimnames(outputMarket)[[1]],] = outputMarket/output[dimnames(outputMarket)[[1]],]
    
    input = VIFA + VDFA
    taxVa = apply(EVFA, c(2, 3), sum) / apply(VFM, c(2, 3), sum)
    va = apply(EVFA, c(2, 3), sum)
    regions = dimnames(VIFA)[[3]]
    commodities = dimnames(VIFA)[[2]]
    inputCommodities = dimnames(VIFA)[[1]]
  })
  
  GTAPDataProcessed = Map(function(f) within(f, eval(process)), GTAPData)
  

  combine = quote(do.call(rbind, Map(function(rr) {
    do.call(rbind, Map(function(cc) {
      rbind(
        do.call(rbind, Map(function(ii) {
          data.frame(
            inputType = 'input',
            inputName = ii,
            commodity = cc,
            region = rr,
            tax = tax[ii, cc, rr],
            outputTax = outputTax[cc, rr],
            input = input[ii, cc, rr],
            output = output[cc, rr]
          )
        }, inputCommodities)),
        
        data.frame(
          inputType = 'factor',
          inputName = 'va',
          commodity = cc,
          region = rr,
          tax = taxVa[cc, rr],
          outputTax = outputTax[cc,rr],
          input = va[cc, rr],
          output = output[cc, rr]
        )
        
      )
    }, commodities))
  }, regions)))
  
  cl = parallel::makeCluster(6)
  
  parallel::clusterExport(cl,'combine')
  
  GTAPDataCombined = parallel::clusterApplyLB(cl,GTAPDataProcessed, function(f)with(f,eval(combine)))
  
  parallel::stopCluster(cl)

  names(GTAPDataCombined) = names(GTAPDataProcessed)
  
  GTAPDataCombinedVersioned = Map(function(f,g){
    f$version = g
    return(f)
    }, GTAPDataCombined, order(names(GTAPDataCombined)))

    

  esubtData = do.call(rbind, GTAPDataCombinedVersioned)
  

  # remove all observation without noticeable taxation
  esubtDataClean =  esubtData[esubtData$tax > 1.0001 |  esubtData$tax < 1 / 1.0001, ]
  
  esubtDataClean = esubtDataClean[complete.cases(esubtDataClean),]
  
  # List of unique commodities (there are some extra ones because the coverage went up from 57 to 68)
  uc = unique(esubtDataClean$commodity)[!is.na(unique(esubtDataClean$commodity))]
  
  # Run the estimation for each commodity
  # Estimation is only based on the log of power of tax, log of value of output and fixed effects for commodities and regions
  
  
  results_oneyear = Map(function(cc) {
    message(cc)
    mm = lm(
      formula = I(log(input) - log(output)) ~   I(log(tax)+log(outputTax)) +  inputName + region + version,
      data = esubtDataClean[esubtDataClean$commodity == cc, ]
    )
  }, uc)
  
  names(results_oneyear) = uc
  
  resultsSummaries = Map(function(f)
    list(coefficients = summary(f)$coefficients, r2 = summary(f)$adj.r.squared), results_oneyear)
  
  saveRDS(resultsSummaries, "resultsSummaries.rds")
 
  
  # Calculate the long-run elasticities
  esubtData$previousVersion = esubtData$version - 1

  esubtDataMerged = merge(esubtData,esubtData, by.x=c('inputType','inputName','commodity','region','version'), by.y=c('inputType','inputName','commodity','region','previousVersion'))

  esubtDataMergedClean = esubtDataMerged[esubtDataMerged$tax.y>1.0001 | esubtDataMerged$tax.y<1/1.0001,]
  esubtDataMergedClean=esubtDataMergedClean[complete.cases(esubtDataMergedClean),]


uc = unique(esubtDataMergedClean$commodity)[!is.na(unique(esubtDataMergedClean$commodity))]

results_threeyears = Map(function(cc) {
  message(cc)
  mm = lm(I(log(input.y)-log(output.y))~ + log(tax.y/tax.x * outputTax.y/outputTax.x) +region + inputName + version, data = esubtDataMergedClean[esubtDataMergedClean$commodity==cc,])

}, uc)

names(results_threeyears) = uc


resultsSummariesLR = Map(function(f)
  list(coefficients = summary(f)$coefficients, r2 = summary(f)$adj.r.squared), results_threeyears)

saveRDS(resultsSummariesLR, "resultsSummariesLR.rds")






  esubtData$previousSecondVersion = esubtData$version - 2


  esubtDataMerged2 = merge(esubtData,esubtData, by.x=c('inputType','inputName','commodity','region','version'), by.y=c('inputType','inputName','commodity','region','previousSecondVersion'))

  esubtDataMergedClean2 = esubtDataMerged2[esubtDataMerged2$tax.y>1.0001 | esubtDataMerged2$tax.y<1/1.0001,]
  esubtDataMergedClean2=esubtDataMergedClean2[complete.cases(esubtDataMergedClean2),]

uc = unique(esubtDataMergedClean2$commodity)[!is.na(unique(esubtDataMergedClean2$commodity))]

results_sixyears = Map(function(cc) {
  message(cc)
  mm = lm(I(log(input.y)-log(output.y))~ + log(tax.y/tax.x * outputTax.y/outputTax.x) +region + inputName + version, data = esubtDataMergedClean2[esubtDataMergedClean2$commodity==cc,])
}, uc)

names(results_sixyears) = uc

resultsSummariesLR2 = Map(function(f)
  list(coefficients = summary(f)$coefficients, r2 = summary(f)$adj.r.squared), results_sixyears)

saveRDS(resultsSummariesLR2, "resultsSummariesLR2.rds")

}

```

```{r echo = FALSE}

results = readRDS('resultsSummaries.rds')
table = do.call(rbind,Map(function(mm,com){

data.frame(`\\rotatebox{90}{Commodity}` = gsub('\\_','\\\\_',com), `\\rotatebox{90}{Estimate}` = round(mm$coefficients['I(log(tax) + log(outputTax))',1]-1,2),  `\\rotatebox{90}{Standard error~}` = round(mm$coefficients['I(log(tax) + log(outputTax))',2],2), `\\rotatebox{90}{Significance}` = round(pnorm(0,abs(mm$coefficients['I(log(tax) + log(outputTax))',1]-1),mm$coefficients['I(log(tax) + log(outputTax))',2]),3), `\\rotatebox{90}{Adjusted $R^2$}` = round(mm$r2,2), check.names = FALSE )
}, results[sort(names(results))], (names(results))))

knitr::kable(list(table[1:35,],table[36:nrow(table),]), caption = 'Estimates of elasticity of substition between intermediate inputs and value-added using the current year data (single year estimates of $\\alpha-1$)', row.names = FALSE, label = 'estimates', align =c("|l", "c", "c","c","c|"), escape=FALSE)

```

```{r echo = FALSE}

resultsLR = readRDS('resultsSummariesLR.rds')
tableLR = do.call(rbind,Map(function(mm,com){

   data.frame(`\\rotatebox{90}{Commodity}` = gsub('\\_','\\\\_',com), `\\rotatebox{90}{Estimate}` = round(mm$coefficients['log(tax.y/tax.x * outputTax.y/outputTax.x)',1]-1,2),  `\\rotatebox{90}{Standard error~}` = round(mm$coefficients['log(tax.y/tax.x * outputTax.y/outputTax.x)',2],2), `\\rotatebox{90}{Significance}` = round(pnorm(0,abs(mm$coefficients['log(tax.y/tax.x * outputTax.y/outputTax.x)',1]-1),mm$coefficients['log(tax.y/tax.x * outputTax.y/outputTax.x)',2]),3), `\\rotatebox{90}{Adjusted $R^2$}`= round(mm$r2,2), check.names = FALSE )
  #data.frame(`Commodity` = gsub('_','\\_',com), `Estimate` = round(mm['log(tax.x)',1],2),  `Standard error` = round(mm['log(tax.x)',2],2), check.names = FALSE )

}, resultsLR[sort(names(resultsLR))], (names(resultsLR))))

knitr::kable(list(tableLR[1:35,],tableLR[36:nrow(tableLR),]), caption = 'Estimates of elasticity of substitution between intermediate inputs and value-added using the inter-release data (three- to four-year estimates of $\\beta-1$)', row.names = FALSE, label = 'estimates-three-year', align =c("|l", "c","c","c", "c|"), escape=FALSE)

```

```{r echo = FALSE}

resultsLR2 = readRDS('resultsSummariesLR2.rds')
tableLR2 = do.call(rbind,Map(function(mm,com){

  coefName = 'log(tax.y/tax.x * outputTax.y/outputTax.x)'
  
  data.frame(`\\rotatebox{90}{Commodity}` = gsub('\\_','\\\\_',com), `\\rotatebox{90}{Estimate}` = round(mm$coefficients[coefName,1]-1,2),  `\\rotatebox{90}{Standard error~}` = round(mm$coefficients[coefName,2],2), `\\rotatebox{90}{Significance}` = round(pnorm(0,abs(mm$coefficients[coefName,1]-1),mm$coefficients[coefName,2]),3), `\\rotatebox{90}{Adjusted $R^2$}` = round(mm$r2,2), check.names = FALSE )

}, resultsLR2[sort(names(resultsLR2))], (names(resultsLR2))))

knitr::kable(list(tableLR2[1:35,],tableLR2[36:nrow(tableLR2),]), caption = 'Estimates of elasticity of substitution between intermediate inputs and value-added using the inter-release data (six- to seven-year estimates of $\\gamma-1$)', row.names = FALSE, label = 'estimates-six-year', align =c("|l", "c","c","c", "c|"), escape=FALSE)

```

```{r include = FALSE}
e1 = as.data.frame(do.call(rbind,Map(function(f)f$coefficients['I(log(tax) + log(outputTax))',] , results)))
e3 = as.data.frame(do.call(rbind,Map(function(f)f$coefficients['log(tax.y/tax.x * outputTax.y/outputTax.x)',] , resultsLR)))
e6 = as.data.frame(do.call(rbind,Map(function(f)f$coefficients['log(tax.y/tax.x * outputTax.y/outputTax.x)',] , resultsLR2)))

e1$com = rownames(e1)
e3$com = rownames(e3)
e6$com = rownames(e6)

combined = merge(e1,e3, by = 'com', suffixes = c('1y','3y'))
combined2 = merge(e3,e6, by = 'com', suffixes = c('3y','6y'))

combined$dif = combined$Estimate1y-combined$Estimate3y
combined$difse = (combined$`Std. Error1y`^2+combined$`Std. Error3y`^2)^.5

combined2$dif = combined2$Estimate3y-combined2$Estimate6y
combined2$difse = (combined2$`Std. Error3y`^2+combined2$`Std. Error6y`^2)^.5

combined$p = 1-pnorm(combined$dif,0,combined$difse)
combined2$p = 1-pnorm(combined2$dif,0,combined2$difse)

sum(combined$p<.05)
sum(combined$p<.5)
sum(combined$p>.95)
sum(combined2$p>.95)


sum(combined2$p<.05)
sum(combined2$p>.95)


```

The estimates of Equation  \@ref(eq-one-year) presented  in Table \@ref(tab:estimates) are calculated using the current year data and they are likely representing the degree to which industries may switch between intermediate inputs and value-added in the near term of about one year. On the other hand, the estimates of Equation  \@ref(eq-three-years) presented  in Table \@ref(tab:estimates-three-year) are based on the price variation across versions of the GTAP database (roughly three years) and represent the adjustment ability of the industries to adjust in the medium term of about three years. A priori, we expect that the level of adjustment in the medium term should not be smaller than that for the shorter term, we check whether our estimated elasticities conform to this expectation. To do that, we calculate the probability that the medium-run elasticity is smaller (meaning greater level of substitution) than the shorter-run elasticity based on the measured standard errors (assuming normal distribution of the estimates) for each  of the 66 estimates in Tables \@ref(tab:estimates) and \@ref(tab:estimates-three-year). In 25 cases, we find that the medium run elasticities are, in fact, smaller than the short-run elasticities at 5-percent significance. A majority of the point estimates, 44, are found to be smaller  than the short-run estimates. We find seven estimates that are both significantly different from zero and larger than the short-run estimates (at 5 percent significance) which means that in a few cases we find lower substitutability of inputs and value-added in the longer run than in the short run.


We are also interested in the degree to which intermediate inputs and value-added can be substituted in a longer run, thus we estimate elasticities based on the price variation across three GTAP databases. This longer run represents about six years, and results are reported in Table \@ref(tab:estimates-six-year). Again, we expect that the elasticity value be smaller in the longer period, which we find to generally hold between the medium-term and longer-term estimates---we find no estimates where run elasticities for the six-year period are greater than those for the three-year period. 

Based on our estimation and the restrictions placed on the values of the elasticities (i.e., their mean estimates must be non-positive and the longer-run values must be smaller than the shorter-run values), we calculate and present in Table \@ref(tab:final) a set of consistent ESUBT parameters^[Following the GTAP convention, we reverse the sign of the elasticity represented by the ESUBT parameter.] for the 66 sectors used in the latest GTAP database based on the results of our estimation. We present not only the one-year, three-year and six-year, but also infinite year extrapolated estimates using the work of @richardson27^[Using Richardson's extrapolation [@richardson27], we apply formula $\mbox{EI} = \frac{6 \times \mbox{E6}-3\times \mbox{E3}}{6-3}$].

There are several important conclusions from the values presented in Table \@ref(tab:final) that require discussion. The most important observation is that  the values of the ESTUB parameter are in a vast majority of cases different from the values currently used in the GTAP database, which are all zeros. Some differences across commodities are also apparent: in the short run, the ESUBT values for minerals are actually zero, followed by the values for primary agricultural commodities that are generally less than 1. The values for processed foods, manufacturing and most services are greater than 1. The pattern remains broadly the same when we move to the longer time horizons, except all values are greater, reflecting the greater substitutability with more available time.

```{r echo = FALSE}

finCom = c("pdr", "wht", "gro", "v_f", "osd", "c_b", "pfb", "ocr", "ctl", 
"oap", "rmk", "wol", "frs", "fsh", "coa", "oil", "gas", "oxt", 
"cmt", "omt", "vol", "mil", "pcr", "sgr", "ofd", "b_t", "tex", 
"wap", "lea", "lum", "ppp", "p_c", "chm", "bph", "rpp", "nmm", 
"i_s", "nfm", "fmp", "ele", "eeq", "ome", "mvh", "otn", "omf", 
"ely", "gdt", "wtr", "cns", "trd", "afs", "otp", "wtp", "atp", 
"whs", "cmn", "ofi", "ins", "rsa", "obs", "ros", "osg", "edu", 
"hht", "dwe", "cgds")

finTable = merge(combined[,c('com','Estimate1y', 'Estimate3y')],combined2[,c('com', 'Estimate6y')],by='com')
rownames(finTable) = finTable$com

finTable$Estimate1y=finTable$Estimate1y-1
finTable$Estimate3y=finTable$Estimate3y-1
finTable$Estimate6y=finTable$Estimate6y-1


finTable$Estimate1y = pmin(0,finTable$Estimate1y)
finTable$Estimate3y = pmin(finTable$Estimate3y ,finTable$Estimate1y)
finTable$Estimate6y = pmin(finTable$Estimate6y ,finTable$Estimate3y)

finTable$E1 = round(-finTable$Estimate1y,2)
finTable$E3 = round(-finTable$Estimate3y,2)
finTable$E6 = round(-finTable$Estimate6y,2)
finTable$EI = round(-(6*finTable$Estimate6y-3*finTable$Estimate3y)/3,2)

knitr::kable(list(finTable[finCom,][1:35,c('com','E1','E3','E6','EI')],finTable[finCom,][36:nrow(finTable),c('com','E1','E3','E6','EI')]), caption = 'Proposed  ESUBT values using our one-year, three-year, six-year and infinite year estimates', row.names = FALSE, label = 'final', align =c("|l", "c", "c","c","c|"))
saveRDS(finTable,'esubt-final-parameters.rds')

```


```{r setup-gtap, include = FALSE}
if(!file.exists('./gtap/cmfs/init.sl4')) {
  shell('cd gtap & model\\gtap.exe -cmf cmfs\\init.cmf')
}

if (!file.exists('./gtap/cmfs/ers.sl4')) {
  params = HARr::read_har('./gtap/data/gsdgpar.har', F, F)
  params$ESBT[] = 0
  params$ESBT[1:14] = .13
  
  HARr::write_har(params, './gtap/data/gsdgparers.har', 10000)
  shell('cd gtap & model\\gtap.exe -cmf cmfs\\ers.cmf')
}

if (!file.exists('./gtap/cmfs/improved.sl4')) {
  params = HARr::read_har('./gtap/data/gsdgpar.har', F, F)
  params$ESBT[] = finTable[names(params$ESBT[]),'E1']  
  HARr::write_har(params, './gtap/data/gsdgparfixed.har', 10000)
  shell('cd gtap & model\\gtap.exe -cmf cmfs\\improved.cmf')
}
if (!file.exists('./gtap/cmfs/improvedLR.sl4')) {
  params = HARr::read_har('./gtap/data/gsdgpar.har', F, F)
  params$ESBT[] = finTable[names(params$ESBT[]),'E3']  
  HARr::write_har(params, './gtap/data/gsdgparfixedLR.har', 10000)
  shell('cd gtap & model\\gtap.exe -cmf cmfs\\improvedLR.cmf')

}
if (!file.exists('./gtap/cmfs/improvedLR6.sl4')) {
  params = HARr::read_har('./gtap/data/gsdgpar.har', F, F)
  params$ESBT[] = finTable[names(params$ESBT[]),'E6']  
  HARr::write_har(params, './gtap/data/gsdgparfixedLR6.har', 10000)
  shell('cd gtap & model\\gtap.exe -cmf cmfs\\improvedLR6.cmf')

}
if (!file.exists('./gtap/cmfs/improvedInf.sl4')) {
  params = HARr::read_har('./gtap/data/gsdgpar.har', F, F)
  params$ESBT[] = finTable[names(params$ESBT[]),'EI']  
  HARr::write_har(params, './gtap/data/gsdgparfixedInf.har', 10000)
  shell('cd gtap & model\\gtap.exe -cmf cmfs\\improvedInf.cmf')

}

```

# Policy implications of the  improved elasticities of substitution between intermediate inputs and value-added 

To illustrate the importance of the estimated elasticities for  policy results using the standard GTAP model, we run a  scenario that approximates one of the key policies of the EU's Farm to Fork strategies (part of the Green Deal), that involved a significant reduction (up to 50%) of some chemicals (pesticides and fertilizers) in crop production.^[Following the approach by @beckman2020 in using  the standard GTAP database without separating pesticides and fertilizers out of the chemicals sector, we run a scenario in which the EU reduces the use of all chemicals in crop production by 50% using an input tax.] We show the implication of such a policy using the original elasticities of substitution (ESUBT) set to zero, a slightly higher values used by other authors [@beckman2020]^[It is important to mention that this report analyzed a much richer policy scenario, involving reduction in other resources, e.g., and imposing aggregate input reduction, rather than the same input reduction imposed on each sector. It is not our intention to replicate the same scenario in our simple illustration.] set to 0.13 and the set of estimated ESUBT values in our work.

The set up of our illustration is based on the classic GTAP model (version 6.2) and the latest available GTAP database version 11 [@aguiar2022] as published in March 2023. The aggregation used includes all 66 sectors available in the GTAP model, with the regions aggregated to four very broad geographic regions: NAFTA, EU, Other Europe (oeurope) and Rest of the World (row). Factors are aggregated into land, skilled labor, unskilled labor, capital and natural resource.  We use the set of default GTAP parameters, except those determining the substitution between value-added and inputs (ESUBT), which we replace with our own estimates for all sectors. The closure of the scenario has capital and labor fully mobile, representing a long-run closure. 

The simulation design involves the creation of a link between tax on intermediate imported and domestic inputs (`tfd` and `tfm`), meaning that the change in `tfd` will be also imposed on `tfm`. To force the reduction of chemicals in the EU, we make the tax variable (`tfd`) on chemicals use in crop output endogenous, and force the quantity of fertilizer in each crop (represented by chemicals `chm`) to fall by 50 percent as an exogenous variable.

```{r include = FALSE}

init = HARr::read_SL4('./gtap/cmfs/init.sl4')
ers = HARr::read_SL4('./gtap/cmfs/ers.sl4')
improved = HARr::read_SL4('./gtap/cmfs/improved.sl4')
improvedLR = HARr::read_SL4('./gtap/cmfs/improvedLR.sl4')
improvedLR6 = HARr::read_SL4('./gtap/cmfs/improvedLR6.sl4')
improvedInf = HARr::read_SL4('./gtap/cmfs/improvedInf.sl4')

```

Figure \@ref(EU-output) shows the implications of the reduction of chemicals in the EU on crop output for the four estimates of the elasticity of substitution between intermediate inputs and value-added. The first set of results (blue bars) show the results when there is no substitutability between intermediate inputs and value added, the default assumed by the GTAP model (ESUBT = 0). Because of this restriction (Leontief production structure), output in the EU must fall exactly by the same proportion as is the reduction any of the inputs, i.e., 50 percent. The third set of bars (red) represents the reduction of output when the estimated short-run (one-year) level of substitution elasticity is assumed (ESUBT1); depending on the exact level of the estimated elasticity, the reduction in output may be much smaller (e.g., pdr--paddy rice and pfb--plant-based fibers) or similar to the reduction in input use where the substitution elasticity is found to be close to zero (e.g., ocr--other crops, osd--oil seeds). The set of yellow bars presents the results for our medium-run (three-year) estimate of the substitution elasticity (ESUBT3), resulting in generally smaller output reductions, with the exception of pdr---paddy rice, where the reduction in output is slightly larger with greater elasticity of substitution due to general equilibrium effects. Increasing the absolute value of elasticity in the longer (six-year) term (ESUBT6, pink bars) and further in the long (infinite time horizon) run (ESUBTINF, gray bars) continues to reduce the quantity impacts as all economic sectors become more flexible in their ability to substitute between inputs and value-added.  

Finally, we consider the second set of bars (ESTUB=0.13, green), which assume the elasticity of substitution equal to 0.13, the assumption made by ERS report [@beckman2020] that estimated the market impacts of the chemical use reduction in the EU in the horizon of about ten years. Clearly this assumption often improves the estimates of output change, but not for all commodities, reflecting the diversity of substitution possibilities across different crops. Also, the quantity impacts of the  modification appear somewhat larger than we would expect from our estimates (between ESUBT6 and ESUBTINF), suggesting that while the value of 0.13 may be appropriate for a shorter time period scenario, it is too small when considering a period of ten years.

```{r EU-output, fig.cap="\\label{EU-output}Impacts of 50 percent reduction of chemicals use on EU's crop output (percentage changes)", echo = FALSE}
myColors = c('navy','seagreen','red3','gold','violet','gray')
myAngles = c(-30,0,30,90, -60,60)
myLegend= c('ESUBT=0', 'ESUBT = 0.13', 'ESUBT1', 'ESUBT3','ESUBT6','ESUBTINF')
par(xpd=TRUE)
toPlot =rbind(init$qo[6:13,'eu','TOTAL'],ers$qo[6:13,'eu','TOTAL'],improved$qo[6:13,'eu','TOTAL'],improvedLR$qo[6:13,'eu','TOTAL'],improvedLR6$qo[6:13,'eu','TOTAL'],improvedInf$qo[6:13,'eu','TOTAL'])

colnames(toPlot) = c('Rice\n(pdr)','Wheat\n(wht)', 'Other grains\n(gro)','Fruit & veg\n(v_f)','Oil seeds\n(osd)', 'Sugar\n(c_b)', 'Cotton\n(pbf)', 'Other crops\n(ocr)')

barplot(toPlot,beside = TRUE, col = myColors, density = c(60), angle = myAngles, cex.axis = 0.7,cex.names = 0.6)
legend('top',inset=c(0, -0.28),myLegend, horiz = TRUE,fill = myColors, density = c(60), angle = myAngles, cex=.7)
```

Next, we look at the implications of the scenario for world prices, which we present in Figure \@ref(world-prices). Because the first scenario with zero substitution elasticity between intermediate inputs and value-added results in the greatest reductions in output, it is no surprise that it also results in the greatest increases in prices as the reduced supply reaches a new equilibrium faced with an inelastic demand (blue bars). Allowing for some substitution in crops leads to smaller output reductions and lower price increases (green bars). However, when we use the estimated elasticity of substitution for all sectors, we obtain the smallest price increases (red bars). The reason for the much smaller price increases in the last scenario---compared to comparable reductions in crop outputs---is that the estimated substitution elasticities allow for further flexibility in most industries, making the demand for crops by the industries that use crops as inputs  more elastic. Using the medium-term, longer-term and long-term elasticities that we estimate (yellow, pink and gray bars), increases the overall flexibility of the production in the economy further, resulting in even smaller price impacts with an increased time horizon.


```{r world-prices, fig.cap="\\label{world-prices}Impacts of 50 percent reduction of chemicals use on world prices (percentage changes)", echo = FALSE}
par(xpd=TRUE)

toPlot = rbind(init$pw[1:8,'TOTAL'],ers$pw[1:8,'TOTAL'],improved$pw[1:8,'TOTAL'],improvedLR$pw[1:8,'TOTAL'],improvedLR6$pw[1:8,'TOTAL'],improvedInf$pw[1:8,'TOTAL'])

colnames(toPlot) = c('Rice\n(pdr)','Wheat\n(wht)', 'Other grains\n(gro)','Fruit & veg\n(v_f)','Oil seeds\n(osd)', 'Sugar\n(c_b)', 'Cotton\n(pbf)', 'Other crops\n(ocr)')


barplot(toPlot,beside = TRUE, col = myColors, density = c(60), angle = myAngles, cex.axis = 0.7,cex.names = 0.6)
legend('top',inset=c(0, -0.28),myLegend, horiz = TRUE,fill = myColors, density = c(60), angle = myAngles, cex=.7)
```

Finally, we turn to the estimates of welfare for each of the scenarios, shown in Figure \@ref(country-ev). Not surprisingly, the first scenario with the greatest input reductions and price increases results in the greatest loss in welfare to the EU and the greatest changes to the welfare in other countries (blue bars). Allowing for greater flexibility of input/factor substitution in the second scenario allows for smaller welfare impacts (green bars), which are generally reduced further with additional flexibility brought with the estimated short-term elasticities (red bars) and even further with the estimated medium-term, longer-term and long-term elasticities (yellow, pink, gray bars).

```{r regional-ev, fig.cap="\\label{country-ev}Impacts of 50 percent reduction of chemicals use on the EV by region", echo = FALSE}
par(xpd=TRUE)

toPlot = rbind(init$ev[,'TOTAL'],ers$ev[,'TOTAL'],improved$ev[,'TOTAL'],improvedLR$ev[,'TOTAL'],improvedLR6$ev[,'TOTAL'],improvedInf$ev[,'TOTAL'])

colnames(toPlot)=c('NAFTA','EU','Other\nEurope', 'ROW')


barplot(toPlot,beside = TRUE, col = myColors, density = c(60), angle = myAngles, ylab = 'Millions of USD', cex.axis = 0.7,cex.names = 0.6)
legend('top',inset=c(0, -0.28),myLegend, horiz = TRUE,fill = myColors, density = c(60), angle = myAngles, cex=.7)
```

# Discussion

## Limitations of the elasticity estimates

The substitution elasticities that we estimate and report in this work depend on several assumptions. In this section, we consider each of the assumptions and the implication for our estimates.

In our work, we assume that taxes are perfectly passed through into input and output prices, one of the assumptions of the standard GTAP model that assumes no market power. This is a key assumption that allows us to use the observable changes in taxes as proxies of price changes to estimate how they impact input use. In the cases where producers hold no market power in their input and output markets, this assumption is likely to hold; however, in the situations of notable monopsony or monopoly power, the pass through of the tax into the the producer price may not be perfect, resulting in smaller quantity response to tax change and biasing the  estimates  towards zero. 

Another important assumption of our work is that taxes are uncorrelated with market prices, meaning that taxes are not systematically adjusted to respond to price changes (for example, to achieve price insulation). While price insulation through taxes (such as tariffs) has been observed  in the context of global food markets [@martin2012;@martin2016], we assume that taxes imposed on intermediate inputs and value-added are largely independent of any price shocks, which cannot be observed in the GTAP database. The violation of this assumption would, however, result in the estimates being biased due to endogeneity; in case of price insulation,  the observed tax change would, in fact, correspond to the opposite of the true price change, resulting in the elasticities estimated with the wrong sign. 

Finally, the quality of our estimates is impacted by the quality of the GTAP tax data that we use as inputs to our estimation. For our estimation to produce correct estimates, it is necessary that all taxes be included in the database without errors. Because the input data into the GTAP database undergoes many adjustments to assure for all identities to hold, small taxes may be introduced as artifacts of the database construction. Also missing tax data can only be represented with a zero tax rate. We try to limit the impact of these data errors by removing taxes smaller than 0.0001 percent with the expectation of removing the observations with random tax values and missing data.

## Directions for future research

The estimates provided in this work are constructed to work with the classic version of the GTAP model. This means that they are country-generic, i.e., there is a single value for each sector estimated globally. While it may not be possible to estimate distinct elasticities for each GTAP region given the scarcity of the data, it may be possible to estimate distinct elasticities for specific regional groups, e.g., based on the country's development level as measured by its *per capita* GDP, or by its geographic location. If the null hypothesis that all countries' substitution elasticities for intermediate inputs can be rejected and country- or region-specific estimates are identified, they would be of great value for the GTAP models that allow for such heterogeneity of parameters, including the most recent GTAP v7 model.

We also envision that additional work could be spent on improving the efficiency of the estimation of the elasticities so as to reduce the  standard errors of the estimates. More efficient estimation methods may include the use of structural models or seemingly unrelated regressions, potentially in conjunction with the estimation of other related elasticities (e.g., the elasticity of substitution among factors in the value-added nest, parameter `ESUBVA` in the GTAP model).  

Finally, a better process of removing the erroneous tax information in the GTAP database could lead to improved results. Going beyond the final GTAP database, for example, by using the raw tax data could allow for better  separation of the  observations with the actual tax data from those with no known tax (zero by default) than our simple filter. We envision that increasing the signal to noise ratio in the underlying data would doubtless improve the efficiency of the estimation, leading to tighter standard errors.

# Conclusions

The elasticity of substitution between intermediate inputs and value-added is a key parameter in  CGE models.  Despite its importance, the elasticity is set to zero in the GTAP framework, representing an unrealistic assumption that the ratio of intermediates and value-added used in production is fixed. To correct the model behavior, modelers have sometimes changed those elasticities with values that were deemed more appropriate; however, no updated estimates for the standard GTAP model currently exists.

In this work, we estimate the values of the elasticities explicitly for the use in the GTAP model using the last five version of the GTAP model, fitting the input demand to the observed data and using the level of taxation as a variable representing variation in prices. Using this method, we obtain a set of estimates, of which all but two (natural gas distribution and crude oil) are of the correct sign. Our estimates allow us to reject the hypothesis that the original set of elasticities of zero are correct, as a vast majority of our estimates are significantly different from zero.

In addition to the current year (short-run) estimates of the substitution elasticities, we also estimate medium-term elasticities that reflect three-year, six-year estimates of the elasticities based on the changes in taxation between versions of the database. Our results show that generally the absolute value of the longer-term elasticities are no smaller than the shorter-term estimates, and in many cases they are much greater, suggesting that most industries are able to find ways to switch between value-added and intermediate inputs over longer time periods.

Finally, having obtained a set of elasticities for various time horizons, we use the Richardson's extrapolation to  generate a set of long-term elasticities (i.e., assuming the infinite time  horizon). Even though the difference between six year and infinite horizon does not appear large, the use of the properly estimated long-term elasticities in long-run scenarios offers an additional improvement of the simulation results intended to capture the implications of scenarios spanning over six years.

To illustrate the importance of the properly estimated elasticities of substitution, we run a scenario based on the recent policy initiative by the EU---the Farm-to-Fork strategies---that calls for a dramatic reduction of some of the agricultural inputs. Contrasting the results for the default GTAP elasticities, the elasticities used by @beckman2020 and the properly estimated elasticities in this work, we show that the impacts of such a policy would be much smaller both in the market and welfare impacts. The demonstrated differences in the welfare impacts could further result in a different set of  countries that would benefit from joining these strategies based on the work of @beckman2022. 

In our illustration, we also demonstrate that simulation results are sensitive to the substitution elasticities estimated for different data frames. It is therefore important to carefully choose the set of elasticties that match the intended time horizon of the simulated scenario. As we demonstrate in our example scenario, the elasticities estimated for shorter time frames allow for noticeably lower degree of substitution and larger market impacts. On the other hand, using the elasticities estimated for longer time frames appears more appropriate for simulations with a longer time frame in mind, resulting in generally smaller overall impacts as the economy's flexibility to adjust appears higher over longer time periods.


\newpage

# References



