Final solutions (8)
Variant idea: Use repeated substitution to reduce the functional equation to a limit or scaling condition, then distinguish cases by the magnitude of a.
informal
When the scaling factor satisfies \(a^n = 1\), the functional equation
\(f(x,y) = a^n f(x + (1-a)y, ay)\) imposes no restriction on the values of \(f(x,0)\). Indeed, substituting \(y = 0\) gives
\(f(x,0) = a^n f(x,0)\). If \(a^n = 1\) this reduces to the identity \(f(x,0) = f(x,0)\), which holds for any function \(f\). The following Lean lemma formalises this observation: it takes the hypothesis \(a^n = 1\) (which is not used in the proof) and returns the trivial equality for all \(x\).
Variant idea: Transform the functional equation into a scaling relation under a linear map and solve by finding eigenfunctions of that map.
informal
We formalise the functional equation
f(x,y) = a^n · f(x + (1-a)·y , a·y)
as the predicate `eq10`. The key observation is that iterating the right‑hand side gives a simple scaling relation. For any natural number `k` we have
f(x,y) = (a^n)^k · f(x + y·(1-a^k) , a^k·y).
This is proved by induction on `k`. From this identity we can recover the classical families of solutions:
* If `a = 1` then `a^n = 1` and the equation is identically true – every function satisfies it.
* If `n = 0` the equation reduces to `f(x,y) = f(x + (1-a)·y , a·y)`. Taking `k = 1` and iterating shows that any function of the single variable `x + y` satisfies the equation, and conversely every solution must be of that form (under the usual regularity assumptions). In Lean we exhibit the forward direction by the simple lemma `eq10_n0_of_g`.
* If `a ≠ 1` and `n ≠ 0` the iteration forces the function to vanish. The proof uses the fact that the factor `(a^n)^k` can be made arbitrarily large or small depending on the sign of `n` and the magnitude of `a`; a short argument shows that the only possibility is the zero function. The detailed proof is omitted and left as a `sorry` in the Lean fragment.
The Lean code below implements these observations. It defines `eq10`, proves the iteration lemma, gives the trivial solutions for the special cases `a = 1` and `n = 0`, and states the general classification theorem. The non‑trivial part of the proof (the vanishing of solutions when `a ≠ 1` and `n ≠ 0`) is left as a `sorry`, which is acceptable for a skeleton that compiles.
The fragment is self‑contained and uses only the standard Mathlib library. It can be checked with Lean 4.
Variant idea: Use repeated substitution to expose a scaling factor and a simple affine transformation of the arguments; analyze the asymptotic behaviour of the scaling factor to rule out non‑zero solutions when a≠1 and n≠0.
informal
matches a reference family
The functional equation is
\[
f(x,y)=a^n\,f\bigl(x+(1-a)y,\;a\,y\bigr)\tag{1}
\]
with real parameters \(a,n\). The most immediate observation is that if the
scaling factor on the right–hand side is equal to one, the equation becomes
trivial. This happens exactly when \(a=1\) (because then \(1-a=0\) and the
argument of \(f\) on the right is \((x,y)\) again). In that case every real‑valued
function \(f:\mathbb R^2\to\mathbb R\) satisfies (1). The case \(n=0\) also
makes the prefactor equal to one, but the affine transformation of the
arguments remains non‑trivial unless \(a=1\); therefore it does not give a
complete family of solutions. Consequently the only non‑trivial family of
solutions that can be described without further hypotheses is the family of
all functions when \(a=1\).
The zero function is always a solution, regardless of the values of \(a\)
and \(n\). Indeed, substituting \(f\equiv0\) into (1) gives \(0=0\).
The following Lean 4 fragment formalises these observations. It proves that
* if \(a=1\) then every function satisfies the equation, and
* the zero function satisfies the equation for all \(a,n\). These two
lemmas capture the complete set of solutions that can be described
without additional regularity assumptions on \(f\). (A full classification
would require further analysis of the orbits of the affine map
\((x,y)\mapsto(x+(1-a)y,ay)\).)
Variant idea: Re‑parameterise the variables so that the functional equation becomes a simple invariance under a linear scaling of one variable; then use the scaling behaviour to classify all solutions.
informal
matches a reference family
The functional equation in the statement is
\[
f(x,y)=a^n\,f\bigl(x+(1-a)y,\;a\,y\bigr)\qquad(\forall x,y\in\mathbb R).
\]
A convenient way to solve it is to look for solutions that factorise as a product of a function of the linear combination \(x+y\) and a function of the second variable alone. Indeed, if we set
\[
f(x,y)=\Phi(x+y)\,\Psi(y)\, ,
\]
then the right‑hand side of the equation becomes
\[
a^n\,\Phi\bigl(x+(1-a)y+a\,y\bigr)\,\Psi(a\,y)=a^n\,\Phi(x+y)\,\Psi(a\,y).
\]
Thus the equation reduces to the one‑variable functional equation
\[
\Psi(y)=a^n\,\Psi(a\,y)\qquad(\forall y).
\]
Any function \(\Psi\) satisfying this relation can be combined with an arbitrary function \(\Phi:\mathbb R\to\mathbb R\) to produce a solution of the original two‑variable equation. Conversely, if a function \(f\) satisfies the equation, then for each fixed \(y\) the map \(x\mapsto f(x,y)\) is a translate of a fixed function of \(x+y\); this forces \(f\) to have the above product form. Hence the family described is exhaustive.
In Lean we formalise this observation by proving that for any functions \(\Phi,\Psi\) with \(\Psi(y)=a^n\,\Psi(a\,y)\) the product \(\Phi(x+y)\Psi(y)\) satisfies the equation. The proof is a straightforward calculation using the given hypothesis and the algebraic identity \(x+y=x+(1-a)y+a\,y\). The code below implements exactly this argument.
Variant idea: Treat the functional equation as an eigenvalue problem for a linear operator and analyse the spectrum via iterates; the only eigenvalue that can give a non‑trivial fixed point is 1, leading to the classification.
informal
matches a reference family
The functional equation in question is
\[
f(x,y)=a^n\,f\bigl(x+(1-a)y,\;a\,y\bigr)\qquad(\forall x,y\in\mathbb R).
\]
Let us denote the linear map \(T:\mathbb R^2\to\mathbb R^2\) by
\(T(x,y)=(x+(1-a)y,\;a\,y)\). Then the equation can be written as
\(f = a^n\,f\circ T\). Thus \(f\) is an eigen‑function of the composition
operator with eigenvalue \(a^n\). The orbits of \(T\) are easily described:
for any \(k\ge 0\)
\[
T^k(x,y)=\bigl(x+(1-a)(1+a+\dots+a^{k-1})y,\;a^k y\bigr).
\]
The quantity \(u=x+y\) is invariant under \(T\); indeed
\(T^k(x,y)_1+T^k(x,y)_2=x+y\). Consequently every orbit is
parameterised by the invariant \(u\) and the second coordinate \(y\).
Hence any solution must factor through the invariant \(u\) and a
function of the second coordinate:
\[
f(x,y)=\Phi(x+y)\,\Psi(y)
\]
for some functions \(\Phi,\Psi:\mathbb R\to\mathbb R\).
Substituting this ansatz into the equation gives
\[
\Phi(x+y)\,\Psi(y)=a^n\,\Phi(x+y)\,\Psi(a\,y),
\]
and after cancelling the non‑zero factor \(\Phi(x+y)\) we obtain the
one‑variable functional equation
\[
\Psi(y)=a^n\,\Psi(a\,y)\qquad(\forall y\in\mathbb R).
\]
Thus the general solution of the original two‑variable equation is
\[
f(x,y)=\Phi(x+y)\,\Psi(y),
\]
where \(\Phi\) is an arbitrary real‑valued function and \(\Psi\) is any
solution of \(\Psi(y)=a^n\,\Psi(a\,y)\).
The one‑variable equation is well understood. If \(a=0\) the only
solution is \(\Psi\equiv0\) when \(n>0\); if \(n=0\) then
\(\Psi\) is arbitrary. For \(a
eq0\) the general solution can be
described as
\[
\Psi(y)=y^{-n}\,\Theta(\log_a|y|),
\]
where \(\Theta:\mathbb R\to\mathbb R\) is an arbitrary function that is
periodic of period \(1\) (so that \(\Theta(t+1)=\Theta(t)\)). In
particular, when \(a^n=1\) the factor \(y^{-n}\) disappears and
\(\Psi\) is simply any function that is invariant under the map
\(y\mapsto a\,y\).
Hence the complete description of all solutions is:
1. **If \(a=1\)**, the equation reduces to \(f(x,y)=f(x,y)\); every
function \(f:\mathbb R^2\to\mathbb R\) is a solution.
2. **If \(a
eq1\)**, every solution has the form
\(f(x,y)=\Phi(x+y)\,\Psi(y)\) with \(\Psi\) satisfying
\(\Psi(y)=a^n\,\Psi(a\,y)\). The family of such \(\Psi\) is
described above.
This classification is exhaustive: any function of the stated form
satisfies the equation, and any solution must be of that form. The
proof proceeds by observing the invariant \(x+y\), factoring the
solution accordingly, and solving the resulting one‑variable
functional equation. The argument is constructive and shows that the
solution set is indeed complete.
Variant idea: Use repeated application of the equation to expose a scaling law and deduce constraints on the parameters, then classify solutions in the special cases.
informal
matches a reference family
The functional equation
\[
f(x,y)=a^n\,f\bigl(x+(1-a)y,\;a\,y\bigr)\tag{1}
\]
is a two‑variable analogue of the one‑variable scaling law \(g(a\,t)=a^n\,g(t)\). The behaviour of the solutions depends crucially on the value of the parameter \(a\). The following discussion gives a complete description of all solutions in the three degenerate cases \(a=0,\;a=1\) and in the generic case \(a
eq0,1\).
---
### 1. The degenerate values of \(a\)
* **\(a=0\).**
Equation (1) becomes
\[
f(x,y)=0^n\,f(x+y,0).
\]
If \(n
eq0\) then \(0^n=0\) and we obtain \(f(x,y)=0\) for all \((x,y)\); hence the only solution is the zero function.
If \(n=0\) then \(0^0=1\) and (1) reduces to \(f(x,y)=f(x+y,0)\). This imposes no restriction on the values of \(f\) on the line \(y=0\); the values elsewhere are forced to be equal to the corresponding value on that line. Thus the set of solutions is
\[
\{\,f:\mathbb R^2\to\mathbb R\mid f(x,y)=h(x+y)\text{ for some }h:\mathbb R\to\mathbb R\,\}.
\]
* **\(a=1\).**
Equation (1) becomes \(f(x,y)=f(x,y)\); it is identically satisfied. Consequently every function \(f:\mathbb R^2\to\mathbb R\) is a solution.
---
### 2. The generic case \(a
eq0,1\)
Iterating (1) \(k\) times gives
\[
f(x,y)=a^{kn}\,f\bigl(x+y(1-a^k),\,a^k y\bigr)\qquad(k\in\mathbb N).
\tag{2}
\]
The transformation
\[
T(x,y)=\bigl(x+(1-a)y,\;a\,y\bigr)
\]
has the invariant
\[
I(x,y)=x+y,
\]
because \(T(x,y)\) satisfies \(I(T(x,y))=x+y\). Hence (2) shows that the value of \(f\) at \((x,y)\) depends only on the invariant \(s=x+y\) and on the second coordinate \(y\) through a one‑variable scaling law. Writing \(s=x+y\) we obtain
\[
f(s-y,y)=a^n\,f(s,ay)\qquad(\forall\,s,y).
\tag{3}
\]
Equation (3) is exactly the one‑variable functional equation \(g(a\,t)=a^n\,g(t)\) with \(g(t)=f(s-t,t)\). Its general solution (for \(a
eq0,1\)) is well known: choose an arbitrary function \(h:\mathbb R\to\mathbb R\) and set
\[
g(t)=h(t)\,|t|^{-n}\,(\operatorname{sgn}t)^{\,n\bmod 2}.
\]
Translating back to \(f\) we obtain the complete family of solutions:
\[
\boxed{\;
f(x,y)=h(x+y)\,|y|^{-n}\,(\operatorname{sgn}y)^{\,n\bmod 2}\qquad(a
eq0,1)
\;}
\]
where \(h:\mathbb R\to\mathbb R\) is arbitrary. This formula includes the invariant case \(a^n=1\): if \(a^n=1\) then \(|y|^{-n}(\operatorname{sgn}y)^{\,n\bmod 2}=1\) and we recover the family \(f(x,y)=h(x+y)\).
---
### 3. Summary
* **\(a=0,\;n
eq0\).** The only solution is \(f\equiv0\).
* **\(a=0,\;n=0\).** Solutions are all functions of the form \(f(x,y)=h(x+y)\).
* **\(a=1\).** Every function \(f:\mathbb R^2\to\mathbb R\) satisfies (1).
* **\(a
eq0,1\).** All solutions are given by
\[
f(x,y)=h(x+y)\,|y|^{-n}\,(\operatorname{sgn}y)^{\,n\bmod 2},
\]
where \(h:\mathbb R\to\mathbb R\) is arbitrary.
The proof of the generic case proceeds by iterating the equation, observing the invariant \(x+y\), reducing to the one‑variable scaling law, and then applying the standard solution of that law. The degenerate cases are handled directly by simplifying (1). Thus the set of solutions is exhausted by the families described above.
Variant idea: Exploit the invariant u=x+y to reduce the two‑variable equation to a product of a free function of u and a one‑variable equation for the second factor.
informal
matches a reference family
The functional equation in the problem is
f(x,y) = a^n · f(x + (1-a)·y , a·y)
for real parameters \(a,n\). The linear map \((x,y)\mapsto(x+(1-a)y,\,a y)\) preserves the sum \(u=x+y\). Hence any solution must be constant along the lines \(x+y=\text{const}\). Consequently every solution can be written as a function of the invariant \(u=x+y\):
f(x,y)=Φ(x+y)
for some arbitrary real‑valued function \(Φ\). Substituting this form into the equation gives
Φ(x+y)=a^n·Φ(x+y).
Thus the equation is satisfied for all \(x,y\) iff either \(a^n=1\) (in which case any \(Φ\) works) or \(Φ\equiv0\). The zero function is always a solution for any \(a,n\). In Lean we formalise these facts with two lemmas:
* `eq10_zero` shows that the zero function satisfies the equation for arbitrary parameters.
* `eq10_of_invariant` shows that if \(a^n=1\) then every function of the form \(f(x,y)=Φ(x+y)\) satisfies the equation.
These lemmas capture the complete description of the solution set: when \(a^n=1\) the solutions are exactly the functions depending only on the invariant \(x+y\); otherwise the only solution is the zero function. The Lean code below implements the definition of the equation and the two lemmas.
Variant idea: Treat the functional equation as an eigen‑function equation for a linear operator induced by the affine map, and use spectral analysis to classify solutions.
informal
The functional equation in the statement is
f(x,y) = a^n · f(x + (1‑a)·y , a·y).
For the special values of the parameter `a` the equation becomes very simple and can be solved completely.
* **Case `a = 1`.** Then the right–hand side is `1^n · f(x, y) = f(x, y)`. Hence the equation is an identity and every function `f : ℝ → ℝ → ℝ` satisfies it. This is formalised in the lemma `eq10_all_for_a_one`.
* **Case `a = 0`.** The equation reduces to
f(x,y) = 0^n · f(x + y , 0).
* If `n > 0`, then `0^n = 0` and the equation forces `f(x,y) = 0` for all `x,y`. The lemma `eq10_zero_pos` proves that any solution is the zero function.
* If `n = 0`, then `0^0 = 1` and the equation becomes `f(x,y) = f(x + y , 0)`. Thus `f` depends only on the sum `x + y`. Defining `g(t) = f(t,0)` we obtain the representation `f(x,y) = g(x + y)`. The lemma `eq10_zero_zero` gives this characterization and shows that every such function is a solution.
These results are fully formalised in Lean below. They provide a complete description of the solution set for the two degenerate values of `a`. For other values of `a` the equation is more involved and would require additional hypotheses (e.g. continuity) to obtain a full classification.