{"id":21065229,"url":"https://github.com/khmelnitskiianton/differentiator","last_synced_at":"2026-05-19T11:33:10.491Z","repository":{"id":209940373,"uuid":"723977597","full_name":"khmelnitskiianton/Differentiator","owner":"khmelnitskiianton","description":"Program differentiates expressions, makes tree in .dot and generates funny .tex book of convertions","archived":false,"fork":false,"pushed_at":"2024-06-01T18:25:51.000Z","size":1106,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-14T01:47:11.374Z","etag":null,"topics":["graphviz-dot","latex","matplotlib","parser"],"latest_commit_sha":null,"homepage":"","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/khmelnitskiianton.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-11-27T06:29:21.000Z","updated_at":"2024-06-01T18:25:54.000Z","dependencies_parsed_at":"2023-12-14T12:13:32.100Z","dependency_job_id":"4102a897-fbbc-4291-8add-086c57b12a31","html_url":"https://github.com/khmelnitskiianton/Differentiator","commit_stats":null,"previous_names":["khmelnitskiianton/differentiator"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/khmelnitskiianton/Differentiator","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/khmelnitskiianton%2FDifferentiator","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/khmelnitskiianton%2FDifferentiator/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/khmelnitskiianton%2FDifferentiator/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/khmelnitskiianton%2FDifferentiator/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/khmelnitskiianton","download_url":"https://codeload.github.com/khmelnitskiianton/Differentiator/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/khmelnitskiianton%2FDifferentiator/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":33214339,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-19T07:54:09.561Z","status":"ssl_error","status_checked_at":"2026-05-19T07:54:08.508Z","response_time":58,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["graphviz-dot","latex","matplotlib","parser"],"created_at":"2024-11-19T17:54:30.465Z","updated_at":"2026-05-19T11:33:07.954Z","avatar_url":"https://github.com/khmelnitskiianton.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Differentiator\n\nProgram analyzes math functions and generates formulas based on binary tree (in .tex and .dot)!\nSo you need to write formula to a file, enter variables and my program calculates it!\n\nSystem: x86-64 Linux\n\n**Example of differentiating and generated math book**:\n\n\u003cimg src=\"https://github.com/khmelnitskiianton/Differentiator/blob/main/example.gif\" width=100%\u003e\n\n## Table of Contents\n\n- [Installation](#installation)\n- [Dependent Objects](#dependent-objects)\n- [Using](#using)\n- [Logs](#logs)\n\n## Installation\n\nTo start program you need to use CMake and run program\n\n1.  Clone repository\n2.  Compile CMake, write command in main directory in repo\n3.  Run CMake (compile program), write command in main directory in repo\n4.  Run program(before you need to create this file) \n\n```c\ngit clone https://github.com/khmelnitskiianton/Differentiator.git\ncd ./Differentiator\ncmake .\nmake\n./diff.elf \u003cfile_to_read_formula\u003e.txt\n```\n1. Write formula, write variables and check `tex/math_book.pdf`!!!\n\n## Dependent Objects\n\nLogs using Graphviz to visualize binary tree!(you can turn them off) \n\n```c\nsudo apt install graphviz\n```\n\nLogs using TeXLive to make a math book of cringe differentiation!(you can turn them off)\n```c\nsudo apt install texlive\n```\n\nAlso logs using Python3 and Matplotlib to generate graphic in math book!\n\n```c\nsudo apt install python3\npython3 -m pip install -U pip\npython3 -m pip install -U matplotlib\n```\n\nIt uses command `pdflatex ...` `python3 ...`\n\n## Using\n\nMy program took only formulas with correct grammar.\n\nThe pattern is (in example_formula.txt):\n\n`( ( ((_ x _)+ (_1_))ln _) ^(_x_) )`\n\nThe main rules for writing formulas are\n1. All types of spaces are ignored.\n2. All arguments must be `_` or other arguments `(...)` and have parentheses! \n3. If function is unary (one arg), write it in left and right side is `_`.\n\n**Types in formula**:\n\n1. Double number\n2. Operators(Binary, unary): `+-*/^`, `sin cos tg ctg ln`\n3. Variables\n\n## Logs\n\n`log_tex.cpp` `log_tex.h`\n\nMy program generates logs in pdf with tex and python graphic! So, you can see in `tex/` file `math_book.pdf` - it is funny generated math book!\n\nIt write every steps in differentiating with cringe phrases, in the and it adds changing(security from overflowing formula in one line)!\n\n`log.cpp` `log.h`\n\nLogs use GraphViz to visualize graphs in images\n\nAfter creating the image it is included in the html file `log.html`\n\n**Example**:\n\n\u003cimg src=\"https://github.com/khmelnitskiianton/Differentiator/blob/main/example_log.svg\" width=50% \u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkhmelnitskiianton%2Fdifferentiator","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkhmelnitskiianton%2Fdifferentiator","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkhmelnitskiianton%2Fdifferentiator/lists"}