```python
from sympy import *
from sympy import poly
x = symbols("x")

def reduction(expr, p) -> bool:
    p_exp = poly(expr)
    values = []
    for i in range(p):
        result = p_exp.subs('x', i) % p
        print(expr + ' with x:' + str(i) +' = ' + str(result))
        if values.__contains__(result): return False
        values.append(result)
    return True

#pass argument with format like '2*x^2+3*x+7'
def bijectivity(expr):
    is_reduction = reduction(expr, 4)
    if(is_reduction): print('polynomial is bijective')
    else: print('polynomial is not bijective')

#pass argument with format like '2*x^2+3*x+7'
def transitivity(expr) -> bool:
    is_reduction = reduction(expr, 8)
    if(is_reduction): print('polynomial is transitive')
    else: print('polynomial is not transitive')

```

8ec3d883b43ae4a5f7d2cbc81a3bc7f6627b233f
ipynb
Jupyter Notebook
task_1.ipynb
viktoriakuanysheva/p-adic
20f4d22dccfd63d939f4321e1e61e41307be9d69
Apache-2.0
task_1.ipynb
viktoriakuanysheva/p-adic
20f4d22dccfd63d939f4321e1e61e41307be9d69
Apache-2.0
task_1.ipynb
viktoriakuanysheva/p-adic
20f4d22dccfd63d939f4321e1e61e41307be9d69
Apache-2.0
Qwen/Qwen-72B
1. YES
2. YES