Metadata-Version: 2.4
Name: trmath
Version: 2.0.0
Summary: Türkçe destekli sembolik & sayısal Python matematik motoru
License: MIT
Project-URL: Homepage, https://github.com/kullanici/trmath
Project-URL: Bug Tracker, https://github.com/kullanici/trmath/issues
Keywords: mathematics,symbolic,calculus,türkçe,natural-language,algebra,statistics
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: Education
Classifier: Intended Audience :: Science/Research
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Topic :: Scientific/Engineering :: Mathematics
Requires-Python: >=3.9
Description-Content-Type: text/markdown
License-File: LICENSE
Provides-Extra: symbolic
Requires-Dist: sympy>=1.12; extra == "symbolic"
Provides-Extra: numeric
Requires-Dist: numpy>=1.24; extra == "numeric"
Requires-Dist: matplotlib>=3.7; extra == "numeric"
Provides-Extra: full
Requires-Dist: sympy>=1.12; extra == "full"
Requires-Dist: numpy>=1.24; extra == "full"
Requires-Dist: matplotlib>=3.7; extra == "full"
Requires-Dist: fastapi>=0.100; extra == "full"
Requires-Dist: uvicorn>=0.22; extra == "full"
Provides-Extra: web
Requires-Dist: fastapi>=0.100; extra == "web"
Requires-Dist: uvicorn>=0.22; extra == "web"
Provides-Extra: dev
Requires-Dist: sympy>=1.12; extra == "dev"
Requires-Dist: numpy>=1.24; extra == "dev"
Requires-Dist: matplotlib>=3.7; extra == "dev"
Requires-Dist: pytest>=7.4; extra == "dev"
Requires-Dist: pytest-cov; extra == "dev"
Requires-Dist: ruff; extra == "dev"
Requires-Dist: mypy; extra == "dev"
Dynamic: license-file

# trmath 🔢

**Türkçe destekli, sembolik & sayısal Python matematik motoru.**

```bash
pip install trmath              # sadece çekirdek
pip install "trmath[symbolic]"  # + sympy (türev, integral, limit…)
pip install "trmath[full]"      # + sympy + numpy + matplotlib
```

---

## Hızlı başlangıç

```python
from trmath import TrMathEngine

engine = TrMathEngine()

# Sayısal
r = engine.calculate("2**10 + sin(pi/4)")
print(r.result)   # 1024.7071…

# Türkçe doğal dil
r = engine.calculate("karekök 144")
print(r.result)   # 12.0

# Sembolik (sympy gerekir)
r = engine.calculate("türev x**3 x")
print(r.result)        # 3*x**2
print(r.latex_output)  # 3 x^{2}

# Birim dönüşümü
r = engine.calculate("100 C -> F")
print(r.result)   # 212.0

# Toplu hesap
results = engine.batch_calculate(["2+2", "türev sin(x) x", "fib 10"])
```

---

## Özellikler

| Kategori | Örnekler |
|---|---|
| Sayısal | `2^10`, `sin(pi/4)`, `log(e)` |
| Doğal dil (TR) | `"5 artı 3"`, `"karekök 16"`, `"10 çarpı sin 30"` |
| Sembolik | türev, integral, limit, çöz, sadeleştir, faktör |
| İleri sembolik | Taylor serisi, Laplace, Fourier |
| Sayı teorisi | asal, EBOB, EKOK, Fibonacci, faktöriyel |
| İstatistik | ortalama, standart sapma, varyans, medyan |
| Matris | det, transpose, inverse, özdeğer |
| Grafik | `plot x**2 from -5 to 5`, `plot3d x**2+y**2` |
| Birim | `5 km -> m`, `100 C -> F`, `1 gb -> mb` |
| Değişken | `x = 5`, `y = x*2` |

---

## MathResult

Her hesap bir `MathResult` döner:

```python
r = engine.calculate("integral x**2 x")

r.success          # True / False
r.result           # x**3/3
r.latex_output     # \frac{x^{3}}{3}
r.steps            # adım adım açıklama listesi
r.execution_time_ms
r.error            # hata varsa mesaj
r.plot_path        # grafik kaydedildiyse dosya yolu
```

---

## CLI

```bash
trmath   # interaktif REPL başlatır
```

---

## Güvenlik

- Yasaklı kelime listesi (`import`, `exec`, `eval`, `os.`, `sys.` …)
- Parantez derinliği limiti (>20 reddedilir)
- Input uzunluğu limiti (>5000 karakter reddedilir)
- Timeout koruması (varsayılan 10s)

---

## Geliştirme

```bash
git clone https://github.com/kullanici/trmath
cd trmath
pip install -e ".[dev]"
pytest
```

---

## Lisans

MIT
