How a dead wrong OECD tax policy 
causes mass unemployment

An explanation using data for Holland 1950-1995

Thomas Cool
August 8 1995

Summary

Empirical observations on the Dutch economy are used to illustrate an earlier analysis that OECD tax policy creates inefficiency unemployment.

Summary & Context

Gross minimum wages in OECD countries appear to rise disproportionally, and they thereby cause increasing unemployment at low productivity levels. The cause for the rise in gross minimum wages is a tax policy which happens to disregard a particular social convention. Tax exemption is annually adjusted for inflation. At the same time, social subsistence tends to rise with the general level of income. The combination causes subsistence jobs to be subjected to rising tax obligations. Due to the notion of subsistence, the tax obligation tends to be translated into rising gross wages. In 45 years the gradual process has built up to sizeable proportions. The resulting unemployment is also inefficient. Taxes below the legal gross minimum could be abolished, since people may not work below that minimum and thus don't pay taxes anyway. This means that there exists a Pareto improving solution from which all could benefit.

This point and its empirically warranted consequences have been discussed by the author elsewhere. Most notable in his work are: (1) a new economic synthesis, (2) theorems in mathematical economics on the role of information in attaining social welfare, (3) a policy analysis on the failure of the checks & balances of the present-day Trias Politica, (4) a warning for the risk of unprecedented violence in the next century, and (5) an advice of a constitutional amendement for the creation of an Economics Supreme Court with a limited task but firmly grounded in the scientific ethic.

Introduction

Basics

For a partial analysis on unemployment, there are two relevant phenomena at the international level:

1) According to an international convention in tax policy, tax rates are adjusted annually for inflation. This also involves tax exemption. (OECD (1986)).

2) Under normal social conditions, subsistence rises with general welfare.

The combination of these two phenomena generates unemployment for the lowly productive. Over a period of time, even mass unemployment ensues.

The current indexation procedure also causes a creeping rise of tax burdens, and there is a rising share of collective expenditure in national income (particularly by the rise of unemployment benefit payments).

Alternatively, this type of unemployment could be avoided by adjusting exemption for the rise in economic welfare too. With this alternative policy, when exemption would grow with general welfare, then the share of collective spending in national income could remain stable - and policy could remain sound.

This analysis has been presented earlier in Cool (1990-1992) and Cool (1994a&b). The reader is referred to this work for many references to the economic literature.

Consequences

The situation is not without consequences. The "Summary & Context" section gives a review of the wider framework. This author explicitly presents a new economics synthesis which integrates a new view with existing results. This synthesis both repairs Samuelson's neoclassical synthesis and allows a better explanation of actual economic developments. The reason that a new synthesis is presented is that this is much more important and enduring than the partial argument and the solution of present-day unemployment. It may be noted, for example, that tackling unemployment was already feasible with the contributions of other authors, like Van Schaaijk (1983) and Bakhoven (1988). Similarly, while the present partial analysis on taxes and unemployment is a novel contribution by the author, it already exists for some years now, but also with little effect on policy. Since Van Schaaijk, Bakhoven and the present author were employed at the Central Planning Bureau at the time of their contribution, one must take into account that those contributions were given at the core of economic discussion and not at the fringe. Economic minds should conclude that the study of unemployment is much less relevant than the study of the (failure of the) information processing system.

Why this paper ?

While the information processing system is the most relevant research topic, there may be occasion sometimes to further develop the partial argument on unemployment. Presently, the Monthly "Maandblad Uitkeringsgerechtigden" asked me for a numerical example on differential indexation  (Van Maanen (1995)). At first I used arbitrary numbers like 3% growth and 4% inflation, but noted that this caused the discussion to diverge from reality. It is best therefor to use actual data, e.g. for Holland for the 1950-1995 period. Due to its welfare state characteristics, Holland may be a showcase example for the whole OECD problem. I also felt attracted by the elegant property of the present exercise that only a few data are required to give an empirically sound review.

What we shall do below

Below we shall use:
a) Dutch tax exemption in 1950 (also taken as subsistence in 1950)
b) Dutch wage and inflation data for 1950-1995
c) a simple tax rule with a statutory marginal rate of 50% above exemption
(which fits the Dutch situation reasonably).

These data allow us to show some consequences of differential indexation of exemption and subsistence. A graph will show how the tax wedge has been rising over the 45 year period.  Since the tax wedge is a proxy for unemployment we can also give an approximation of the Phillipscurve and its shift. We can verify that the Dutch economy shifted from low unemployment and inflation in the 1950s to high inflation and unemployment in the 1970s, and to low inflation but still high unemployment in the 1990s. (In 1995 official and hidden unemployment combine to 25% of the Dutch labour force.) We can also show the squeezing of wage differentials between minimum and higher wages. The analysis appears to allow some counterfactuals. Thus we may see what likely would have happened when tax policy would have been to index exemption on the general welfare instead of inflation only. Finally, these data also allow clarification of my earlier analysis on marginal tax rates. The proper marginal tax rate is dynamic, i.e. keeps account of changes in tax rates. The present tax policy generates high and fluctuating dynamic marginal rates, and the alternative tax policy would allow low and stable rates.

Obviously, the analysis could become more accurate by including actual observations on unemployment (and the like). However, this quickly complicates matters beyond necessity. For example, much unemployment is hidden in sickness and disability, and it would be complicated to discuss that problem. These complications are not required for the present analysis. Looking back at it, the present analysis does seem valuable in its own right.

Author and copyright

(C) Thomas Cool 1995
Consultancy & Econometrics, P.O. Box 84399, NL 2508 AJ The Hague, The Netherlands

On the notation

This article has been written in Mathematica. If you have that program, then you could enter your own country data. I use my own Mathematica programs, Cool (1995), and I will be happy to sell you a copy.

The body of the text has text, input and output intermixed, where each kind can be recognized by type setting.

We use expressions like "func[yr_] := " as functional definitions, where the underscore identifies variables. These relations give concrete output when used with fixed data as in "func[1995]".

Symbols = and := are assignments,  == stands for an equation, (* ...*) gives a comment, % refers to the former result, /. A-> B is for replacement of A with B.

For assigned indices we will use the phrases incomeIndex, inflationIndex and realEarningsIndex. For algebraic relations with unassigned variables, we will use the term wageIndex instead of incomeIndex, priceIndex instead of inflationIndex and realWageIndex instead of realEarningsIndex (and shorter wi, pi and rwi). For the annual change we use annualWageInflation (w), annualInflation (p) and growth (g = 
(1 + w) / (1 + p) -1).

Historical data and basic equations

As said, we only use exemption in 1950, time series of wages and inflation, and a simple tax scheme.

In each section we first compare 1950 with 1995, and secondly make a graph of the whole 1950-1995 period.

Tax exemption for a Dutch couple in 1950 was 1020 Dutch guilders, in currency of that time. At the current (tag) rate of Dfl 1.5 = $1, that exemption would be a nominal $680. We will proceed in dollars.

exemption[1950] = 1020 / 1.5  (* in dollars, for an 1995 tag rate of Dfl 1.5 = $1 *)

We also have Dutch data on inflation and the wage per worker (income).

Needs["Cool`Data`Holland`"]

incomeIndex[yr_] := Take[lbi, Position[year, yr][[1]]][[1]]

inflationIndex[yr_] := Take[cpi, Position[year, yr][[1]]][[1]]

realEarningsIndex[yr_] := incomeIndex[yr] / inflationIndex[yr]

In a 45 years period, inflation made everything in Holland 5.8 times as expensive.

inflationIndex[1995]

Productivity in 1995 is 3.8 times as high as 1950:

realEarningsIndex[1995]

Combined, all relevant currency values are 3.8 * 5.8 = 22 times as high.

incomeIndex[1995]

Graphs will help us to grasp the data for the whole period.

The following graph gives the Dutch price level for 1950=1, for the period 1948-1996 (where 1995 and 1996 are official forecasts).

ListPlot[Transpose[{year, cpi}], PlotJoined -> True]

The next graph gives the real level of wages for 1950 = 1. Note that Dutch real incomes have been stagnant since 1980.

ListPlot[Transpose[{year, lbi/cpi}], PlotJoined -> True]

The next graph gives the nominal level of company wages for 1950 = 1.

ListPlot[Transpose[{year, lbi}], PlotJoined -> True]

We can also look at annual inflation, i.e. the year to year relative change of the price level:

annualInflation = RateOfChange[cpi];
annualWageInflation = RateOfChange[lbi];
growth = RateOfChange[ lbi /cpi ];

ListPlot[Transpose[{year, annualInflation}], PlotJoined -> True]

Instead of the official tax statutes we use a simple tax scheme with a 50% statutory marginal rate. Research by Marein van Schaaijk (1988) and Willem Vermeend (1992) warrants that the error we make is not too large.

mtr = .50; (*marginal tax rate*)
tax[y_, exemption_] := mtr * Max[y - exemption, 0]

exemption[yr_] := exemption[1950] * inflationIndex[yr]

We complete this data section with subsistence data. There are indications that the 1950 exemption was at the level of subsistence:

subsistence[1950] = exemption[1950];

subsistence[yr_] := subsistence[1950] * incomeIndex[yr]

So, we only have inflation and wage data, a simple tax scheme, and a 1950 figure for exemption. Let us see what Mathematica can do with this.

The above average rise of gross minimum wages

Subsistence is a net amount that grows with the general growth of incomes. As a result, subsistence in 1995 should be 22 times the level in 1950.

subsistence[1950]

subsistence[1995]

Exemption for 1995 has been adjusted for inflation:

exemption[1995]

The 1950 tax scheme left subsistence exempt. The 1995 tax scheme however doesn't leave subsistence exempt:

tax[subsistence[1995], exemption[1995]]

How much should gross earnings be in 1995, to retain net subsistence ?

grossMinimumWage[yr_] := x /. FindRoot[Evaluate[
	subsistence[yr] == x - tax[x, exemption[yr]]], {x, 10000., 100000.}]

grossMinimumWage[1995]

tax[grossMinimumWage[1995], exemption[1995]]

Thus, a 1995 Dutch minimum wage worker must earn gross $26,000, pay taxes of $11,000, and will retain net subsistence of $15,000.  (Note: these data are close to the actual data for Holland in 1995.)

These data allow us to conclude too that the gross minimum wage has risen much faster than other incomes, namely (1.7 times as fast as the normal rise of 22).

Also, the rise in income is an indicator for the rise of productivity. Thus when the gross minimum wage rises faster than other incomes, then it rises faster than (general) productivity, and then the conclusion of unemployment for that income bracket is sound. In other words, $26,000 is much too high for employers, and as a consequence many become unemployed.

We repeat these calculations for the whole period. Gross and net minimum then develop as follows:

data = Table[{subsistence[yr], grossMinimumWage[yr]}, {yr, 1951, 1996}];

Needs["Graphics`MultipleListPlot`"]

MultipleListPlot @@ Transpose[data]

The difference between gross and net is the tax wedge. The development of the tax wedge can best be grasped by looking at the gross to net ratio (GNR) at the subsistence level.

gnr = Table[ grossMinimumWage[yr] / 
	subsistence[yr], {yr, 1948, 1996}] // Nullify;

ListPlot[Transpose[{year, gnr}], PlotJoined -> True]

These wedge data clarify that the turning point was early in the 1970s. The major damage was inflicted in the 1950-1970 period. Holland has not been able in the period 1970-1995 to undo that damage. The situation however has not grown worse, though not by an active policy, but by the stagnation of real incomes.

Growth and inflation

We can look at the plot of real income and inflation to get a quick summary of developments.

A first result is given by the indices 1950 = 1. A graph shows a period with rising real income under low inflation, and then a period with stagnating real income under a rising price level:

ListPlot[Transpose[{lbi /cpi , cpi}], PlotJoined -> True]

Another summary view is provided by the annual rates of change. The Dutch data as a whole look curiously like a rearing horse. From low inflation and high growth, it goes to higher growth and higher inflation, then higher inflation but lower growth, and then there is a retreat to low growth and inflation.

ListPlot[Transpose[{growth, annualInflation}], PlotJoined -> True]

Approximating the Phillipscurve

Developments on growth and inflation can be related to unemployment. Some possible links are these: High growth would imply low unemployment and high (wage) inflation. Unemployment would imply lower effective demand. Lower growth might cause unemployment; and unemployment would check (wage) inflation.

The Phillipscurve family gives the (hypothetical) relationship between unemployment and (wage) inflation. There is a short run curve, and there is a long run (shift of) the curve.

Saying that the wedge causes unemployment, implies that we can take that wedge as an indicator of unemployment. The available data on the gross/net ratio thus allow an approximation of the Phillipscurve process. Specifically, since the people below the minimum wage are no longer active on the job market, and thus do not help to lower wage demand, it is the rise of the GNR which causes the shift of the Phillipscurve.

The following plots show a trend rise of both unemployment (the wedge) and inflation. The last decade shows lower inflation, but unemployment remains at a high level. Thus we find a reproduction of the typical shift of the short run Phillipscurve.

ListPlot[Transpose[{gnr, annualInflation}], PlotJoined -> True]

ListPlot[Transpose[{gnr, annualWageInflation}], PlotJoined -> True]

Algebraic tautology

Our measure of unemployment (the wedge) can be linked with economic growth (real income).

The rate of growth graph follows from those on annual inflation and wage inflation:

ListPlot[Transpose[{gnr, growth}], PlotJoined -> True]

Regarding the real income level index, we find the following neat curve between the gross/net ratio at the minimum and the real level of income:

ListPlot[Transpose[{gnr, lbi / cpi}], PlotJoined -> True]

The cause for the neat curve is the tautological relationship between our measure of the wedge and our measure of real economic growth. The gross/net ratio at the minimum (GNR) appears to equal (2 - 1 / realWageIndex). The following statements deduce that relationship.

subsistence  == gross - taxes == gross - mtr (gross - exemption);

subsistence[1950] wageIndex == gross - mtr (gross - exemption[1950] priceIndex)

sol = Solve[subsistence[1950] wageIndex == gross - mtr (gross - exemption[1950] priceIndex), {gross}]

GNR ==  (gross / (subsistence[1950] wageIndex) ) /. sol // Simplify

% /. wageIndex -> (priceIndex realWageIndex) //. 1. -> 1 // Simplify

Thus, for example, in the graph above, the real wage index value of 2 (all incomes are twice the real income level of 1950) associates with a GNR wedge measure of 1.5 (gross income at the minimum is 50% above net).

Another example is that a tenfold rise in productivity or real income gives the following evolution of our measure of the wedge:

Plot[  2 - 1 / rwi, {rwi, 1, 10}, AxesOrigin ->{1,1}]

There is also the following implication. As real income rises towards infinity (as we might hope), the wedge measure reaches a maximum of 2. This means that the value for the gross/net ratio of 1.7 is relatively high (under present tax rules).

The flow of causation here is that growth affects the size of the wedge. Our relations do not yet allow a conclusion on how the wedge (unemployment) affects growth.

Income-differentials squeeze and a creeping higher tax bill

The current tax policy means unemployment for the low wage groups. For higher incomes the tax policy mainly means a creeping higher tax bill. And there is a squeeze of wage differentials.

To keep track of differentials, we take a "distance" variable, measured as the ratio of one's income to subsistence, and calibrated to the situation in 1950. The distance X thus may also stand for a class of individuals who earn X times subsistence (in 1950 terms).

income[distance_, 1950] := distance subsistence[1950]
income[individual_, yr_] := income[individual, 1950] * incomeIndex[yr]

Take for example mr. A, who was 18 years old in 1950, and who at that time earned three times the subsistence level:

income[A =  3, 1950]

Mr. A is 63 in 1995 and looks back at a working life in which his earnings have kept up with the trend. The first thing to note is that A's income in 1995 is only 1.7 times the present gross subsistence level.

income[A, 1995]

income[A, 1995] / grossMinimumWage[1995]

In 1950 A had an average tax burden of 33%, and his net income was 2 times net subsistence.

taxBurden[individual_, yr_] := (earn = income[individual, yr];   tax[earn, exemption[yr]] / earn)

taxBurden[A, 1950]

net[individual_, yr_] := (earn = income[individual, yr];    earn - tax[earn, exemption[yr]])

net[A, 1950] / subsistence[1950]

In 1995 his tax burden has risen to 45%, and he only has 1.6 times net subsistence. The income distribution thus has been squeezed. (And the community apparently needs funds to pay for the unemployment benefits.)

taxBurden[A, 1995]

net[A, 1995] / subsistence[1995]

Had exemption risen with general welfare, then the average tax burden of A had remained at 33%. (And the funds for unemployment benefits would not have been needed.)

alternativeTaxBurden[individual_, yr_] := 
		(earn = income[individual, yr]; tax[earn,  subsistence[yr]] / earn)

alternativeTaxBurden[A, 1995]

We repeat above analysis with graphs for the whole period.

The actual path of the gross differential is:

ListPlot[Table[{yr,   income[A, yr] / grossMinimumWage[yr]},
	{yr, 1950, 1995}], PlotJoined -> True]

A's (average) tax burden has the path:

ListPlot[Table[{yr, taxBurden[A, yr]}, {yr, 1950, 1995}], PlotJoined -> True]

The true marginal rate is dynamic

The marginal rate is defined as the share of taxes on additional income.

Conventionally, the marginal rate is equated to the statutory rate. In the present example, the marginal rate would thus be 50%.

Another conventional thought is that a high marginal rate discourages effort. The present OECD policy on exemption may be seen as caused by the preference for lower statutory marginal rates. One will recognise that a lower exemption seems to allow for a lower statutory marginal rate. Inflation indexation seems to result into a relatively lower exemption.

However, there are some pitfalls. (1) Statements like the latter are only true when one neglects the employment and benefit consequences. (2) One should compute the marginal rate correctly, which includes dynamics. (3) Marginal rates may also help to control inflation.

Our new analysis shall be that a higher exemption still can combine with a relatively low marginal rate: if only that rate is computed correctly.

We discuss mr. A's situation in 1995 both conventionally and in terms of the new analysis.

The conventional computation of the marginal rate is as follows. We add to A's income a small amount, and then divide the increase of taxes by that amount. We take one dollar for that small amount.

base = income[A, 1995]

new = 1 + base

Thus conventionally:

tax[income_] := tax[income, exemption[1995]];

(tax[new] - tax[base]) / (new - base)

Above relation uses a fixed 1995 exemption. Our new analysis is that we take account of changes in the tax rates too. Since tax changes are relevant for considerations of changes in effort, these tax changes cannot be neglected. The correct marginal rate is for all clarity called the dynamic marginal rate. The rate that does not include such changes is called the static rate. Since exemption grows, the dynamic rate normally is lower than the static rate.

For example, the dynamic marginal rate for A on his trend income path:

base = income[A, 1995]; new = income[A, 1996];
(tax[new, exemption[1996]] - tax[base, exemption[1995]]) / (new - base)

Or, when A would earn an additional $1000 for an additional effort above his trend income and productivity rise:

base = income[A, 1995]; new = income[A, 1996] + 1000;
(tax[new, exemption[1996]] - tax[base, exemption[1995]]) / (new - base)

The new analysis shows that the dynamic marginal rate would be lower when the new tax policy would be to have exemption to be always equal to subsistence.

base = income[A, 1995]; new = income[A, 1996];
(tax[new, subsistence[1996]] - tax[base, subsistence[1995]]) / (new - base)

The marginal rates will differ for most personal income developments, but still be lower than the statutory rates. For example the $1000 above trend income:

base = income[A, 1995]; new = income[A, 1996] + 1000;
(tax[new, subsistence[1996]] - tax[base, subsistence[1995]]) / (new - base)

We repeat above analysis with period graphs.

dynamicMarginalRate[distance_, yr_] :=
	(base = income[distance, yr];
	new = income[distance, yr+1];
	(tax[new, exemption[yr+1]] - 
	tax[base, exemption[yr]]) / (new - base))

Since actual income development has not been stable, mr. A has had a volatile (dynamic) marginal rate, and, due to low exemption, actually at a high level.

ListPlot[Table[dynamicMarginalRate[A, yr], {yr, 1951, 1995}], PlotJoined -> True]

When exemption is indexed on wages, the marginal rate is obviously lower and more stable (currently, even constant at 33%, equal to the average tax burden (see below)).

alternativeDMT[distance_, yr_] :=
	(base = income[distance, yr];
	new = income[distance, yr+1];
	(tax[new, subsistence[yr+1]] - 
	tax[base, subsistence[yr]]) / (new - base))

ListPlot[Table[alternativeDMT[A, yr], {yr, 1951, 1995}], PlotJoined -> True, PlotRange -> {.2, mtr}]

Analysis

General relations

We can extend on what we started in the section on the algebraic tautology, and find the general relationship of the key variables in this paper.

We keep the relation that subsistence grows with income. We allow that exemption differs from subsistence and has a different indexation than prices. Then E is base exemption, S is base subsistence, ES = exemption / subsistence, and ESIndex = exemptionIndex /  wageIndex.

relations = {ES == exemption / subsistence,
		E == ESBase S, 
		exemption == exemptionIndex  E,
		subsistence == wageIndex  S};

Solve[relations, ES, {E, S, subsistence, exemption}]

In case that the exemption index is inflation, then we find:

ESIndex == exemptionIndex / wageIndex /. exemptionIndex -> priceIndex /.
		wageIndex -> priceIndex * realWageIndex

GNR: the gross/net ratio at the minimum

A general derivation of the GNR at the minimum is the following:

subsistence  == gross - m (gross - exemption);

S wageIndex == gross - m (gross - E exemptionIndex)

solution = Solve[% , {gross}]

GNR ==  gross / (S wageIndex)  /. solution // Simplify

% /. wageIndex -> (exemptionIndex / ESIndex) /. E -> S ESBase  // Simplify

If the exemption index is below the wage index, then the limit is 1 / (1 - m).

Also, when a value of GNR is known, then we can solve for the ESIndex:

Solve[ %, ESIndex]

The income[distance] / Gross[minimum] ratio

For an arbitrary distance from subsistence, the grossIncome[dist] / gross[minimum] ratio can be expressed in the already known GNR at the minimum level:

ratioOfGrossIncomeToGrossMinimum[distance_] := distance S wageIndex / (GNR * S * wageIndex)

ratioOfGrossIncomeToGrossMinimum[dist] // Simplify

The average tax

The general expression of the average tax burden is tax[gross[dist]] / gross[dist]:

taxburden[dist] == m (dist S wageIndex - E exemptionIndex) /
			 (dist S * wageIndex) // Simplify

% /. wageIndex -> (exemptionIndex / ESIndex) /. E -> S ESBase  // Simplify

We can use the relationship on the GNR:

% /. ESIndex -> (1 - GNR (1 -m)) / (ESBase m) // Simplify

Note that this relation holds regardless of the way of indexation. The indexation method affects GNR, and the latter apparently is a sufficient measure.

GNR[distance]

The tax burden on the arbitrary distance can also be represented by a gross/net ratio, just as has been done for the minimum level.

GNR[dist] ==  (dist S * wageIndex) /
			( dist S * wageIndex - m (dist S wageIndex - E exemptionIndex) )

Eliminate[%  /. (exemptionIndex -> wageIndex  ESIndex), wageIndex][[2]]

Solve[% , GNR[dist]]

We again can eliminate ESIndex and find that GNR is a sufficient indicator:

% /. ESIndex -> (1 - GNR (1 -m)) / (E / S  m) // Simplify

GNR[dist] == dist / (1 + (dist - GNR) (1 - m))

Since we know the likely limit value of GNR, we find the associated limit for GNR[dist]:

% /.  GNR[dist] -> GNRLimit[dist] /. GNR -> 1/(1 -m) // Simplify

These relations appear to imply that the further the distance from the minimum, the quicker the limit of a gross/net ratio will be reached. For example, if we take the gross/net ratio at the minimum with the present value of 1.7, and m = .5, then for distances 1 till 10 we find the following gross/net ratios:

Plot[ dist / (1 + .5 (dist  - 1.7)), {dist, 1.7, 10}]

One will note that some low values of dist will have been overtaken by the disproportional rise of the gross minimum. Specifically, for some value of dist the GNR[dist] will solve to be the GNR of the minimum value; and then dist is that minimum level dist = GNR itself. For example, in 1995 the GNR is 1.7, which means that all incomes up to 1.7 have been overtaken by the disproportional rise of the gross minimum wage. In formulas for the general situation:

Solve[ GNR == dist / (1 + (dist - GNR) (1 - m)),    dist]

The marginal rate

We can find an analytical relationship by taking w for the wage growth and e for the rate of exemption indexation, both for one single year to the next:

DMT[dist] ==  (base = dist S wageIndex;
		new =  dist S wageIndex (1 + w);
		(m (new - E exemptionIndex (1 + e)) - 
		 m (base -  E exemptionIndex )) / (new - base)) // Simplify

% /. wageIndex -> (exemptionIndex / ESIndex) /. E -> S ESBase  // Simplify

Again it is possible to find an expression with GNR:

% /. ESIndex -> (1 - GNR (1 -m)) / (ESBase  m) // Simplify

The marginal rate on the national growth path

For people whose incomes follow the national trend, the dynamic marginal rate will equal their average tax burden.

Let Y[t] be income and T[t] the associated tax amount in year t. Then dLog[Y]/dt is the growth rate of income, and under balanced growth it equals dLog[T]/dt. The (dynamic) marginal tax rate is m == dT/dY == (dT/dt)/(dY/dt) == T' / Y'.

Under balanced growth the marginal rate equals the average tax rate Y/T. We can deduce that from the following equation:

D[Log[Y[t]], t]  == D[Log[T[t]], t]

Solve[ {D[Log[Y[t]], t]  == D[Log[T[t]], t], m == T'[t] / Y'[t]}, m, {T'[t], Y'[t]}]

Estimation

Above we noted a tautological relationship between the index of real growth and the gross/net ratio (GNR) at the minimum. We also found a relation between the GNR and the average and marginal tax of an arbitrary distance from the minimum.

The question now arises whether there is a reverse relationship. The GNR (our indication of unemployment), the tax burdens and inflation all would affect growth.

A relevant estimation equation is the following:

growth == b annualInflation + u (GNR - 1) + a taxburden[dist] + d DMT[dist] + c

Since GNR is in the (1, 2) range and we wish to interprete c as default growth, we subtract 1. By using the formal expressions for the tax rules we can also try to estimate the "average" distance (dist) which determines the effective tax burdens.

Concerning the signs of the coefficients, it needs to be considered that there are various effects. Rising prices are an indication of overheated and thus growing markets, but, rising prices might also negatively affect future prospects. Unemployment may reduce effective demand, but may also help to control the price level. Tax rates would seem to discourage effort, but they also generate revenue for government outlays, and they penalize wage demands and thus help to control inflation. An estimation thus is not likely to support a priori views, but might provide insight how all these forces balanced out in the given period.

The Dutch economy is an open economy, and most growth is imported from the world. One may thus wonder whether it is useful to do an estimation for Holland on these purely national data. However, the mentioned tax policy is an international policy, and thus the Dutch data nontrivially reflect world developments.

Estimation should be treated with care. As said, there exist exact and tautological relations between the variables within above equation. In a real sense, estimation is superfluous. However, estimation does allow us to link with the literature and ongoing discussion, and thus enhances clarity. (This works out in two directions, as some researchers may not be aware of the hidden tautologies.)

It turns out that the Mathematica nonlinear estimation routine indeed indicates ill-conditioned matrices, and thus parameter dependency. The best conclusion will be given in the next section on simulation. The following serves to understand that simulation result.

Cool[Estimate]

First we estimate growth, on inflation (coefficient b), a constant (c), and our measure of unemployment (GNR - 1) (coefficient u). The R2 is .62, but the centered R2 adjusted for the degrees of freedom is only .18. In this run, there would be a trend real income growth of 5,6%. Inflation appears to slightly stimulate growth (b -> .16), and unemployment has a light negative effect (u -> -.05).

datarule = Thread[{g, GNR, w, p} -> DataFilter[growth, gnr, RateOfChange[lbi], RateOfChange[cpi] ]];

Estimate[g ==   b p + u (GNR - 1) + c, datarule, {b, u, c}]

We now add the relations for average and dynamic marginal tax. We take the general expression that allows a simulation with another tax indexation rule.

tq =  (GNR (1 - mtr) + dist mtr - 1) / dist

dmt = mtr - e (1 - GNR (1 - mtr)) / (dist w)

Using these tax rules improves the fit to an adjusted R2 of .51. However, coefficients are unreliable, the constant seems to be a problem, and the "average distance" is low at 1:

res =  Estimate[g ==   b p + u (GNR - 1) + a tq  + d dmt /. e -> p, datarule, {b, u, a, d, dist}];

BestFitCoefficients /. res

TValues /. res

One possible solution is to fix the distance, e.g. at dist -> 3. The estimate on the next page gives an adjusted R2 of .52, and we find high t-values for the influence of inflation and tax rates. The influence of unemployment now is dubious. The effect of inflation has more than doubled (b -> .34) compared to the first run. The tax result is that average taxes penalize growth (a -> -.5), while marginal taxes appear to stimulate it (d -> .5) (possibly through their wage checking effect). As said, a conclusion is postponed to the simulation section below.

Estimate[g ==   b p + u (GNR - 1) + a tq  + d dmt /. e -> p   /. dist -> 3 ,
	 datarule, {b, u, a, d}]

Simulation

In this section we use the implicit parameter dependency to force a fit that is best useful for a simulation of the alternative tax policy.

The 1950-1960 period was least affected by the cumulation of the negative effects of the differential indexation policy. That period thus becomes a norm for the alternative policy of wage indexation for exemption. In other words, we can find the best estimate for a simulation of the alternative policy by subjecting the estimate to the condition that the 1950-1960 period must be reproduced as best as possible.

When the annual indexation of exemption is wage growth, then e -> w, and also GNR -> 1. This greatly simplifies the estimated growth, also since it causes equality of marginal and average tax rates. (Thus, curiously, we estimate tax parameters in order to eliminate them.)

We substitute these data in the relation that is to be estimated:

toEstimate = (g ==  b p + u (GNR - 1) + a tq  + d dmt + c  /. GNR -> 1 /. e -> w // Simplify)

Average inflation and real growth in the 1950-1960 period were:

p5060 = inflationIndex[1960]^(1/(1960-1950)) - 1

rw5060 = realEarningsIndex[1960]^(1/(1960-1950)) - 1

Combining these data allows us to choose the constant in the equation:

sim =  Solve[toEstimate /. g -> rw5060 /. p -> p5060, c][[1,1]]

The following again estimates the distance variable too. We find an adjusted R2 of .41. The distance is reasonable at 1.88. The effects of taxes have the same signs as above, but a wider range (a -> -.87, d -> .17) and coefficient a has a low t-value. The positive effect of prices is lower (b -> .25). The effect of unemployment remains positive (u -> .14), meaning that  minimum wage unemployment puts no constraint on the rise of real wages and indeed furthers a rise.

final = Estimate[g ==   b p + u (GNR - 1) + a tq  + d dmt + c /. e -> p /. sim,
	 datarule, {b, u, a, d, dist}]

Though coefficient a has an inadequate t-value, the estimate as a whole is useful for a simulation.

The result of this final estimate can be checked, by verifying that the conditions of e -> w and GNR -> 1 generate the growth rate of the 1950s:

toEstimate /. sim // Simplify

% /.  (BestFitCoefficients /. final) /. p -> p5060

It follows that the additional conditions have allowed us to fix the constant in the equation, which coefficient of default growth could not be well determined in a free estimation.

For the simulation, if we assume wage indexation of exemption, then it is reasonable to also assume that counterfactual inflation in 1950-1995 copies the 1950-1960 period. The estimated parameters then warrant that growth is at its default value. Extrapolating for 45 years gives simulated growth:

simulatedGrowth = 
	Join[{Null, Null}, Table[(1 + rw5060)^t, {t, 1950-1950, 1996-1950}]];

The following graph gives the level indices of real growth and counterfactual growth. It shows that we have succeeded in forcing the fit to the 1950-1960 period. The actual path shows higher growth in the 1970s, probably in relation to inflation, and then, during 1980-1995, stagnation. The simulated growth comes out 70% higher than the actual 1995 value. Since large sections of the (also rather stagnant) USA are 70% richer than many in Holland, that level is not an unreasonable indication.

MultipleListPlot @@ DataFilter[lbi/cpi, simulatedGrowth]

Killing this type of unemployment costs nothing

The fastest and most efficient measure to solve the discussed kind of unemployment is to abolish all tax obligations for full time workers below the minimum wage. The new gross minimum for entrants will then be equal to the present net minimum. This measure will not cost anything, since the people affected - with the mentioned productivity levels - are not allowed to work now, don't earn and thus don't pay taxes anyway. The existing tax rule in that bracket is only a paper rule, with the only effect of driving up gross wages (towards a high unemployment level).

A lower gross minimum wage will certainly cause some crowding out of existing workers by the cheaper entrants. When present-day insiders become unemployed, the tax collector also loses some tax revenue. However, one should be careful with the choice of words. It is important to respect proper meanings. Words like 'crowding out' and 'tax loss' carry suggestions that are not quite valid. What is relevant is the balance of tax income and benefit payments. Since this balance will improve, there are no actual losses. Also, the present unemployed are crowded out of the labour market by a mechanism out of their control: and it is not fair to say that they would crowd out others if that mechanism is removed.

Those who now hold a job are basically productive. If some would lose their present job as a result of the abolishment of paper tax rules for others, then their prospects remain good. The economy will boom, and their skills will be highly needed elsewhere.

Of course, the tax abolishment scenario needs to be evaluated with our macro-economic and general equilibrium models (see Gelauff (1992)). As said, various relevant details and nuances have been developed elsewhere just for that purpose.

Appendices

Literature

Note: Please be aware of the wealth of the literature. For example, I might refer to the AER May issue, etc: but, those are just not relevant now for the present exercise with these Dutch data.

Anton Bakhoven (1988), "Een marktgerichte oplossing voor het werkloosheidsprobleem," Economisch Statistische Berichten, January 13

Thomas Cool (1992), "Definition & Reality in the general theory of political economy; Some background papers 1989-1992", Magnana Mu Publishing & Research

Thomas Cool (1994), "Tax structure, inflation and unemployment", Magnana Mu Publishing & Research

Thomas Cool (1994), "Trias Politica & Centraal Planbureau", Samuel van Houten Genootschap

Thomas Cool (1995), "CoolPac4; Mathematica packages for decision support", see CAIN, www.can.nl

George Gelauff (1992), "Taxation, social security and the labour market", Wibro 1992

Bart van Maanen (1995), "Onwelgevallige conclusies; Economisch plan komt het CPB ongelegen", Maandblad Uitkeringsgerechtigden, July

OECD (1986), "An empirical analysis of changes in personal income taxes," Paris

Marein van Schaaijk (1983), "Loondifferentiatie en werkloosheid", Economisch Statistische Berichten, September 21

Marein van Schaaijk (1988), "Overzicht gewaarborgd", Maandschrift Economie, pp 372-378

Willem Vermeend (1992), "De achterkant van het belasting- en premiebiljet", Gouda Quint

Short notes on alternative explanations.

On technology

Purely seen as biological creatures, modern people are not remarkedly superior to their ancestors in the Middle Ages. But their level of productivy is much higher. The cause must be (defined as) the rise of technology (including economic institutions and other social relations). Technology may create temporary pockets of unemployment, but not the massive structural kind which we experience these decades. Technology has in fact reduced unemployment by allowing people to remain at work under present tax rates.

On crowding out

Unemployment is a relative phenomenon. The last 50 years have seen a tremendous rise of the world population, and the number of jobs has not remained fixed at the 1945 level but has risen with the size of the population. So, creating a job for someone doesn't imply the taking away of a job of someone else. Basically, a newly employed person adds his or her skills to the total, instead of replacing someone else.

We see basic economic laws at work for people above the minimum wage, which laws cause them to be employed at their level of productivity. Why is it that these laws don't seem to work for people below the minimum wage ? The reason is, that these people are confronted with unfair tax levels. (And then, economic laws are at work indeed.)

On international trade

Imports from low wage countries are relatively small in size. And their wages are rising (fast). Competition from these countries thus doesn't form a sound explanation for our present state of unemployment. In fact, trade has existed for centuries, and has generally contributed to economic welfare. Trade may create temporary pockets of unemployment, but not the massive structural kind which we experience these decades.

The Dutch data

The following data are from the Dutch Central Planning bureau. Cpi is the consumer price index (level) and lbi is the wage sum per worker index (level).

Transpose[{year, cpi, lbi}] // MatrixForm // Print