How to find non-trivial solution of a system of equations?

I have a system of four equations

 eqs4 := {(-5 + 2 c) E^(
4 I c π) (E^(4 I c π) Subscript[x, 1] - Subscript[x,
4]) == (5 + 2 c) E^(
12 I a c) (Subscript[x, 2] -
E^(4 I c π) Subscript[x, 3]), (-5 + 2 c) E^(
6 I a c) (-E^(I b) + E^(6 I a c)) Subscript[x,
3] == (5 + 2 c) (1 - E^(I (b + 6 a c))) Subscript[x,
4], (-5 + 2 c) (-E^(2 I c (3 a + 2 π)) + E^(
I (b + 8 c π))) Subscript[x,
2] == (5 + 2 c) (-E^(-6 I c (a - 2 π)) + E^(
I (b + 8 c π))) Subscript[x, 1],
Subscript[x, 3] + 2 c (Subscript[x, 1] + Subscript[x, 3]) +
Subscript[x, 4] - Subscript[x,
1] - (5 + 2 c) Subscript[x, 2] == -2 c Subscript[x, 4]};


and I want to find the non-trivial solution of the system when $$det=0$$. I want to obtain $$\left\{x_1,x_2,x_3,x_4\right\}$$ in terms of other parameters.

Trying solve, I only obtain trivial solution zero:

Solve[eqs4, {Subscript[x, 1], Subscript[x, 2], Subscript[x, 3],
Subscript[x, 4]}] //
Simplify[#,
Assumptions ->
c ∈ Reals &&  c > 0  && b ∈ Reals &&  b > 0 &&
a ∈ Reals &&  a > 0  && d ∈ Reals] &


Then, I try to ignore one of the equation and variables as follows

eqs3 := {(-5 + 2 c) E^(6 I a c) (-E^(I b) + E^(6 I a c)) Subscript[x,
3] == (5 + 2 c) (1 - E^(I (b + 6 a c))) Subscript[x,
4], (-5 + 2 c) (-E^(2 I c (3 a + 2 π)) + E^(
I (b + 8 c π))) Subscript[x,
2] == (5 + 2 c) (-E^(-6 I c (a - 2 π)) + E^(
I (b + 8 c π))) Subscript[x, 1],
Subscript[x, 3] + 2 c (Subscript[x, 1] + Subscript[x, 3]) +
Subscript[x, 4] - Subscript[x,
1] - (5 + 2 c) Subscript[x, 2] == -2 c Subscript[x, 4]};


and I get a solution

solution =
Solve[eqs3, {Subscript[x, 2], Subscript[x, 3], Subscript[x, 4]}] //
Simplify[#,
Assumptions ->
c ∈ Reals &&  c > 0  && b ∈ Reals &&  b > 0 &&
a ∈ Reals &&  a > 0  && d ∈ Reals] &;



But when I try to verify this solution, one of them is not verified.

eqs4 /. solution //
Simplify[#,
Assumptions ->
c ∈ Reals &&  c > 0  && b ∈ Reals &&  b > 0 &&
a ∈ Reals &&  a > 0  && d ∈ Reals] &


Does anybody have a suggestion on how I can find a solution of this system?

2 Answers

There are no general non-trivial solutions. First I've replaced the Subscript's with x[1],x[2],x[3],x[4]. Then I subtracted the rhs of each equation so each equation would equal zero, and I discarded the == 0 part for brevity.

eqs4 = {
(-5 + 2 c) E^(4 I c π) (E^(4 I c π) x[1] - x[4]) - (5 + 2 c) E^(12 I a c) (x[2] - E^(4 I c π) x[3]),
(-5 + 2 c) E^(6 I a c) (-E^(I b) + E^(6 I a c)) x[3] - (5 + 2 c) (1 - E^(I (b + 6 a c))) x[4],
(-5 + 2 c) (-E^(2 I c (3 a + 2 π)) + E^(I (b + 8 c π))) x[2] - ((5 + 2 c) (-E^(-6 I c (a - 2 π)) + E^(I (b + 8 c π))) x[1]),
x[3] + 2 c (x[1] + x[3]) + x[4] - x[1] - (5 + 2 c) x[2] + 2 c x[4]
};


Then I obtained a matrix with CoefficientArrays[eqs4, Array[x, 4]] - the first element is all zero as there are no constant terms, so we can do:

mtx = CoefficientArrays[eqs4, Array[x, 4]] // Normal // Last
FullSimplify[mtx.Array[x, 4] == eqs4] (* confirm it works: True *)


Notice that NullSpace[mtx] is empty. Also I cannot find an {a,b,c} such where $$\det(M)=0$$ except at $$a=0,b=0,c=0$$:

FindInstance[Det[mtx] == 0, {a, b, c}, Complexes]
(* {{a -> 0, b -> 0, c -> 0}} *)

FindInstance[Det[mtx] == 0, {a, b, c}, Complexes, 2]
(* FindInstance::nsmet: The methods available to FindInstance are
insufficient to find the requested instances or prove they do not exist. *)


We can try to find the NullSpace of any triple of equations:

mtx3way = Subsets[mtx, {3}];
nsp3way = Simplify[First@NullSpace[#]] & /@ mtx3way;


Each of Simplify[mtx.nsp3way[[1]]], Simplify[mtx.nsp3way[[2]]], Simplify[mtx.nsp3way[[3]]], Simplify[mtx.nsp3way[[4]]] should have three zeros and one complicated expression in a,b,c.

Looking at the first one, we can find an a,b,c which satisfies it in the Complexes, but any attempt to do so in the Reals will fail:

t1 = Simplify[mtx.nsp3way[[1]]] // Last
i1 = FindInstance[t1 == 0, {a, b, c}, Complexes]


If you are prepared to fix {a,b,c} to specific values, finding many non-trivial solutions is easy, for example, rigging a=0, b=0, c=0:

sols = FindInstance[
FullSimplify[eqs4 /. {a -> 0, b -> 0, c -> 0}] == {0, 0, 0, 0},
Array[x, 4], Reals, 100]

• Thanks. Yes, in general and for all four variables yes, but it should be a way to obtain three of them in terms of one variable. Something like finding an unnormalized solution.
– user73733
Jul 14, 2020 at 13:20

You can find a nontrivial solution. Let me develop the thought of @flinty further.

Expanding Det[mtx] shows, it gets much simple with certain a,b

det1 = Det[mtx] // Expand

dd = Det[mtx] /. a -> 2 Pi /. b -> 8 c Pi // Expand

ComplexExpand[Im@dd, TargetFunctions -> {Re, Im}]


The result of that ComplexExpand are all Sin[8 c Pi], Sin[12 c Pi], implying c should be c==1. Bingo!

Solve[Thread[eqs4 == 0] /. a -> 2 Pi /. b -> 8 c Pi /. c -> 1,
Array[x, 4]]

(*   Solve::svars: Equations may not give solutions for all "solve" variables. >>

{{x[3] -> x[1], x[4] -> -((4 x[1])/3) + (7 x[2])/3}}   *)


Edit

All multiples of b==2 Pi are allowed. For a all multiples of Pi are allowed, also multiples of Pi/3.

• By fixing {a,b,c} to certain values, e.g {a -> 2 Pi, b -> 8 Pi, c -> 1}, it is easily solvable. I thought the question asked for the x[i] in terms of arbitrary {a,b,c}. Otherwise: FindInstance[ FullSimplify[eqs4 /. {a -> 0, b -> 0, c -> 1}] == {0, 0, 0, 0}, Array[x, 4], Reals, 25] finds loads of them. Jul 14, 2020 at 14:36
• {a -> 0, b -> 0,c->0}  are not allowed due to conditions. I think the question was to find (conditions for) a,b,c where the xi have no trivial solution. Since Reduce didn't do the job for me, i found some a,b,c by intuition. Jul 14, 2020 at 14:50