One Expression, Many Values
Python 2, 56 bytes



f=lambda h,*t:t and"(.5?.5)*(%s+%%s)+"%f(*t)%-h+`h`or`h`


Try it online!

The ? stands for ±. Example usage:

f(-3,5,20) -&gt;
(.5?.5)*((.5?.5)*(20+-5)+5+3)+-3


The idea is that we can take an expression E and adjoin a new value h to its set of values by doing (.5±.5)*(E+-h)+h.