eliminate() continue:

issue #2720 : We need some kind of eliminate function, like http://reference.wolfram.com/mathematica/ref/Eliminate.html. See also http://stackoverflow.com/q/20826969/161801

I am trying to use
subs
and_invert
to get answer. May be one can usereplace
,xreplace
,match
to eliminate some kind of same sub expression. 
There can be ans in
Imageset
,Finiteset
,Complement
,Intersection
when we use_invert
. So there should be a technique to handle it. 
Still need some good idea and technique. WIP.
Output of solveset should be of one type:

Amit discussed about it. Solution we see in
solveset
should be in one type of set. Right now we may have solution inImageset
,Finiteset
,Complement
,Intersection
orConditionSet
. So there would be problem for user to handle these many solution type. 
I think there should be something that separate
Complements
,Intersections
,ConditionSet
and main solution inFiniteset
. 
E.g. if solveset solution is
Intersection(Complement(FiniteSet(x), {y}), {z})
then soln :FiniteSet(x)
,x != {y}
,{x} intersect {z}
.
Continue Simplified Trig soln
PR #11188

According to the Harsh comments/review I modified the PR. Now it seems it is returning more simplified solution( one case is here) .

To understand the changes I did in the
_solve_trig
method, one should check this gist 
To see the advantage of imageset union, One good example is in this gist
continue
Follow @shekharrajak