# About EvalChebyshevFunction

**URL:** <https://openfhe.discourse.group/t/about-evalchebyshevfunction/1195>\
**Category:** FHE Use Cases\
**Created:** [April 16, 2024, 1:55am UTC](https://openfhe.discourse.group/t/about-evalchebyshevfunction/1195 "2024-04-16T01:55:30Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![kenan](https://avatars.discourse-cdn.com/v4/letter/k/e495f1/32.png) [@kenan](https://openfhe.discourse.group/u/kenan)\
**Post date:** [April 16, 2024, 1:55am UTC](https://openfhe.discourse.group/t/about-evalchebyshevfunction/1195/1 "2024-04-16T01:55:30Z")

</div>

I want to use a root sign on this set of ciphertexts. How can I set the upper and lower bounds?

Std:: vectorx1={1543.01429.5100.0, 7.9992897.42};  
Plaintext ptxt1=cc -\>MakeCKKSPackedPlaintext (x1);  
Auto c1=cc -\>Encrypt (publickey, ptxt1);  
Double lowerBound=0;  
PperBound=20;  
Uint32\_t polyDegree=50;  
Auto sqrt1=cc -\>EvalChebyshevFunction ( (double x) -\>double {return std:: sqrt (x);}, c1, lowerBound,  
SuperBound, polyDegree);

---

<div class="post-metadata">

**Author:** ![ypolyakov](https://yyz1.discourse-cdn.com/flex031/user_avatar/openfhe.discourse.group/ypolyakov/32/47_2.png) [@ypolyakov](https://openfhe.discourse.group/u/ypolyakov)\
**Post date:** [April 18, 2024, 1:47am UTC](https://openfhe.discourse.group/t/about-evalchebyshevfunction/1195/2 "2024-04-18T01:47:35Z")

</div>

All values in the vector should be within the range used for interpolation (with extra room reserved for the CKKS error). For example, an upper bound of 1600 would work in this case. The lower bound of 1.0 would also work.
