Relating to the question on how the money supply should be designed over time for a new coin, here is some visualization of various options. The reference is the "
BTC-design" with block reward halving every 4 years and a final amount of 21 Mill coins.
For comparison, all curves are normalized to have the same amount of coins (=2,625,000) after the end of the first year.
What we see:
- For all non-exponential schemes the inflation rate eventually becomes arbitrarily small.
- With the BTC-like scheme, the inflation rate decreases exponentially (=linear in logarithmic diagram).
- With constant linear increase of money supply, the inflation rate decreases linearly (like a y=1/x function), falling below 1% after 100 years.
- With logarithmic increase of money supply, money supply and inflation rate basically behave the same as for the constant mining rate, but inflation rate decreases much faster, depending on tuning of the parameters.
It appears that logarithmic (or even linear) growth could be an alternative to a BTC-like hard limit. Especially the logarithmic solution appears to be an attractive alternative. However, in essence it would have very similar properties as the "hard limit" of the BTC-design. Increase of money supply would not match growth of earth population or productivity [which anyway cannot be predicted upfront], just like for the BTC method, and therefore a coin with logarithmic growth would show a similar deflationary behaviour (just to a slightly lower extend as BTC). The number of coins in existence (money supply) would actually still continue growing when our sun becomes a red giant, billions of years from now (note: with the parameterization of below's figures, money supply for the logarithm method after 100 years is 22.4 Mill coins, and after 1 Billion years still less than 100 Mill coins).

Zoomed: First 30 years:

Update note: I did not read the MC2 whitepaper until just now, so I ensure that the similarity of Fig. 2 on page 7 of the whitepaper with the bottom left diagram above is the result of independent work.
Zoomed: First 10 years:

For comparison: US$ exponential growth of money supply (note the logarithmic y-axis):

PS: Here is the source code used for the curves above:
% Script file for Matlab or Octave, tested with Matlab 2007b and GNU Octave 3.0.0.
%
% This script illustrates the Total Money Supply and the corresponding yearly rates of Money Supply increase
% (="inflation") of a (crypto-)currency, depending on the scheme how coins are brought into existence.
%
% Schemes considered include:
% - constant inflation rate (=exponential money supply growth)
% - linear growth of money supply (i.e. constant rate at which new coins are being generated)
% - logarithmic growth of money supply
% - Bitcoin-like coin generation with regular block reward halving
% - no growth, constant money supply
N = 248; % number of years, must be multiple of 4
timelimit=30; % how much to zoom-in after pressing <Enter>, to show years 0 till "this year"
money_supply_after_1_year = 50*52500; % 52500*50 corresponds to nb of bitcoins after 1 year
%% I. Calculate the Money Supply:
%
% About the index: Index "2", i.e. money_supply_xxxx(2), denotes the amount of existing coins after the end
% of the 1st year or start of year 2.
time = [0:1:N];
%% I - (0) Constant
money_supply_const = money_supply_after_1_year*ones(1,N+1);
%% I - (1) Linear Growth
money_supply_linear = money_supply_after_1_year*time;
%% I - (1b) Logarithmic Growth:
% The amount of coins being mined is decreased like this:
% In the first year, coins are mined at a constant rate, and add up to Nc coins at the end of year one.
% The number of coins that are newly created in year n (n>=2) is equal to b/n * Nc,
% where b is a positive coefficient, typically between 0 and 2, but can also be greater than 2.
a = 1.0; % Nc = a*money_supply_after_1_year*ones, i.e. money supply after 1st year can be tuned by this parameter.
b = 1.8; % 0<=b<=2, or b >2 also possible
c = 1.0; % Exponent for "nb of years" variable. Greater values mean slower growth. If =0, logarithmic growth becomes linear.
money_supply_log = a*money_supply_after_1_year*ones(1,N+1);% this is the nb of coins after 1st year, i.e. money_supply_log(2)
money_supply_log(1) = 0;
for k = 3:N+1,
n = k-1; % calculate for year "n" now:
money_supply_log(k) = (a*money_supply_after_1_year) * b/(n)^c + money_supply_log(k-1);
end
%% I - (2) Exponential Growth (1% Inflation Per Year)
money_supply_exp1 = money_supply_after_1_year*ones(1,N+1);
money_supply_exp1(1) = money_supply_exp1(2)/1.01;
for k = 3:N+1,
money_supply_exp1(k) = 1.01*money_supply_exp1(k-1);
end
%% I - (2b) Exponential Growth (5% Inflation Per Year)
money_supply_exp5 = money_supply_after_1_year*ones(1,N+1);
money_supply_exp5(1) = money_supply_exp5(2)/1.05;
for k = 3:N+1,
money_supply_exp5(k) = 1.05*money_supply_exp5(k-1);
end
%% I - (3) Bitcoin-like Growth
money_supply_BTC = NaN*ones(1,N+1);
money_supply_BTC(1) = 0;
money_supply_BTC(2) = 1*money_supply_after_1_year;
money_supply_BTC(3) = 2*money_supply_after_1_year;
money_supply_BTC(4) = 3*money_supply_after_1_year;
money_supply_BTC(5) = 4*money_supply_after_1_year;
increase = 1/2*money_supply_after_1_year; % block reward halving every 4th year
for k = 6:4:N+1,
for kk = k:k+3,
money_supply_BTC(kk) = money_supply_BTC(kk-1) + increase;
end
increase = increase/2;% block reward halving every 4th year
end
money_supply_max = max(money_supply_const, money_supply_linear);
money_supply_max = max(money_supply_log, money_supply_max);
money_supply_max = max(money_supply_exp1, money_supply_max);
money_supply_max = max(money_supply_exp5, money_supply_max);
money_supply_max = max(money_supply_BTC, money_supply_max);
%% II. Calculate the Inflation Rate:
inflation_rate_const = inf*ones(1,N);
inflation_rate_linear = inf*ones(1,N);
inflation_rate_log = inf*ones(1,N);
inflation_rate_exp1 = inf*ones(1,N);
inflation_rate_exp5 = inf*ones(1,N);
inflation_rate_BTC = inf*ones(1,N);
for k = 2:N-1,
inflation_rate_const(k) = money_supply_const(k+1) / money_supply_const(k) - 1;
inflation_rate_linear(k) = money_supply_linear(k+1) money_supply_linear(k) - 1;
inflation_rate_log(k) = money_supply_log(k+1) / money_supply_log(k) - 1;
inflation_rate_exp1(k) = money_supply_exp1(k+1) money_supply_exp1(k) - 1;
inflation_rate_exp5(k) = money_supply_exp5(k+1) money_supply_exp5(k) - 1;
inflation_rate_BTC(k) = money_supply_BTC(k+1) / money_supply_BTC(k) - 1;
end
% Special correction for exponential inflation rates:
inflation_rate_const(1) = inflation_rate_const(2);
inflation_rate_exp1(1) = inflation_rate_exp1(2);
inflation_rate_exp5(1) = inflation_rate_exp5(2);
%% III. Plot Results:
figure
subplot(2,2,1);
plot(time, money_supply_exp5,'r-.','linewidth',2); hold on;
plot(time, money_supply_exp1,'r-','linewidth',2); hold on;
plot(time, money_supply_linear,'b-','linewidth',2);
plot(time, money_supply_log,'c--','linewidth',2);
plot(time, money_supply_BTC,'m-','linewidth',2);
plot(time, money_supply_const,'g-','linewidth',2);
grid on;
title('Total Money Supply');
xlabel('Time in Years')
ylabel('Total Money Supply (Coins in Existence)')
legend('Inflation 5% p.a.','Inflation 1% p.a.','Constant Linear Increase',['Logarithmic Increase, a=',num2str(a),', b=',num2str(b)],'BTC-like Increase','No Money Increase','location','northwest');
subplot(2,2,2);
semilogy(time, money_supply_exp5,'r-.','linewidth',2); hold on;
semilogy(time, money_supply_exp1,'r-','linewidth',2); hold on;
semilogy(time, money_supply_linear,'b-','linewidth',2);
%semilogy(time, money_supply_log,'c--','linewidth',2);
semilogy([0.25, 0.5, time(2:end)], [[0.25, 0.5]*money_supply_log(2),money_supply_log(2:end)],'c--','linewidth',2);
% semilogy(time, money_supply_BTC,'m-','linewidth',2);
semilogy([0.25, 0.5, time(2:end)], [[0.25, 0.5]*money_supply_BTC(2),money_supply_BTC(2:end)],'m-','linewidth',2);
semilogy(time, money_supply_const,'g-','linewidth',2);
grid on;
title('Total Money Supply (Logarithmic Scale)');
xlabel('Time in Years')
ylabel('Total Money Supply (Coins in Existence)')
subplot(2,2,3);
plot(time(1:end), 100*[inflation_rate_exp5(1),inflation_rate_exp5],'r-.','linewidth',2); hold on;
plot(time(1:end), 100*[inflation_rate_exp1(1),inflation_rate_exp1],'r-','linewidth',2); hold on;
plot(time(2:end), 100*inflation_rate_linear,'b-','linewidth',2);
plot(time(2:end), 100*inflation_rate_log,'c--','linewidth',2);
plot(time(2:end), 100*inflation_rate_BTC,'m-','linewidth',2);
plot(time(1:end), 100*[inflation_rate_const(1),inflation_rate_const],'g-','linewidth',2);
grid on;
title('Yearly "Inflation" Rate of Total Money Supply');
xlabel('Time in Years')
ylabel('Yearly Increase of Money Supply in Percent')
legend('Inflation 5% p.a.','Inflation 1% p.a.','Constant Linear Increase',['Logarithmic Increase, a=',num2str(a),', b=',num2str(b)],'BTC-like Increase','No Money Increase','location','northeast');
subplot(2,2,4);
semilogy(time(1:end), 100*[inflation_rate_exp5(1),inflation_rate_exp5],'r-.','linewidth',2); hold on;
semilogy(time(1:end), 100*[inflation_rate_exp1(1),inflation_rate_exp1],'r-','linewidth',2); hold on;
semilogy(time(2:end), 100*inflation_rate_linear,'b-','linewidth',2);
semilogy(time(2:end), 100*inflation_rate_log,'c--','linewidth',2);
semilogy(time(2:end), 100*inflation_rate_BTC,'m-','linewidth',2);
semilogy(time(1:end), 100*[inflation_rate_const(1),inflation_rate_const],'g-','linewidth',2);
grid on;
title('Yearly "Inflation" Rate of Total Money Supply (Logarithmic Scale)');
xlabel('Time in Years')
ylabel('Yearly Increase of Money Supply in Percent')
legend('Inflation 5% p.a.','Inflation 1% p.a.','Constant Linear Increase',['Logarithmic Increase, a=',num2str(a),', b=',num2str(b)],'BTC-like Increase','No Money Increase','location','southeast');
a=axis;
axis([a(1), a(2), 1e-3, 1e2]);
disp('--> Press <Enter> to zoom in...')
pause
for k=1:4,
subplot(2,2,k);
a=axis;
if k < 3,
a4=money_supply_max(timelimit);
elseif k == 3,
a4=30;
else
a4=a(4);
end
axis([a(1), timelimit, a(3), a4]);
end
(Update: added 3rd parameter "c" for the logarithmic curve in the code above. Default c=1.0, while c=0.0 makes the growth linear.)