People seem to think that shorthand that makes sense to them is always going ot make sense to a computer.
syms f1 f2 f3 f4
When use the following form, what does MATLAB see?
f1==f2==f3==f4 ans = ((f1 == f2) == f3) == f4
Can we "solve" that problem? What if we added one more equation, that f4==1? That should make the problem well posed.
solve(f1==f2==f3==f4,f4 == 1) ans = struct with fields:
f1: [0×1 sym] f2: [0×1 sym]
No solution was found.
The problem is YOU understand a transitive shorthand like this: a=b=c=d, to imply that all of them are equal. MATLAB does not take it that way.
Instead, you need to set the problem up with separate equations.
S = solve(f1==f2, f2==f3, f3==f4, f4 == 1) S = struct with fields:
f1: [1×1 sym] f2: [1×1 sym] f3: [1×1 sym] f4: [1×1 sym]
And we see that S.f1 is what we expect.
S.f1 ans = 1