├── evaluation ├── module2_formula_rearrangement │ └── module2_description ├── module4_question_text_generation │ └── module4_description ├── module3_identifier_value_generation │ ├── module3_description │ ├── unit_test_module3.py │ └── Latex2Sympy_transformations.csv ├── module5_solution_value_and_unit_check │ └── module5_description ├── module1_formula_and_identifier_retrieval │ ├── module1_description │ ├── Identifier_Unit_Wikidata_Properties_evaluation.xlsx │ ├── GoldID-QID_correspondence.csv │ ├── unit_test_module.csv │ ├── Identifier_Unit_Wikidata_Properties_evaluator.py │ └── Identifier_Unit_Wikidata_Properties_evaluation.csv ├── PhysWikiQuiz_Challenges.pdf ├── ResearchQuestionsTasks.docx ├── PhysWikiQuizvsCompetitors.csv ├── current_challenges.txt ├── module_workflow │ ├── unit_test_module_workflow_latex2sympy_evaluated(0).pdf │ ├── unit_test_module_workflow_latex2sympy_evaluated(0).xlsx │ ├── demo_examples.csv │ ├── log_properties.csv │ ├── unit_test_module_workflow_empty.csv │ ├── unit_test_module_workflow_manual(0).csv │ ├── LaTeX2Sympy_vs._LaCASt.tgn │ ├── unit_test_module_workflow_latex2sympy_evaluated(0).csv │ ├── integration_test.py │ └── unit_test_module_workflow_latex2sympy_generated(0).csv ├── ConceptComparison.csv ├── ResearchQuestionsV1.txt ├── sample_IDs.csv ├── module_workflow.txt └── Applied_questions.csv ├── images ├── N_generated_formula.png ├── N_questions_generated.png ├── PhysWikiQuiz_workflow.png ├── PhysWikiQuiz_acceleration.png ├── PhysWikiQuiz_demo_speed.gif ├── unit_test_module_workflow.png ├── PhysWikiQuiz-Workflow_white.png ├── PhysWikiQuiz_demo_acceleration.gif └── PhysWikiQuiz_workflow_acceleration.png ├── login ├── templates │ ├── ._signup.html │ ├── profile.html │ ├── index.html │ ├── login.html │ ├── signup.html │ ├── teacher.html │ ├── student.html │ └── base.html ├── models.py ├── __init__.py ├── static │ └── style.css ├── auth.py ├── utils │ └── sql_tools.py └── main.py ├── old ├── PhysWikiQuiz-Screenshot.jpg ├── PhysWikiQuiz-Workflow.png ├── PhysWikiQuiz-Screenshot_correction.jpg ├── module1_identifier_unit_retrieval.py ├── module_outputs0.py └── module0_formula_and_identifier_retrieval.py ├── PhysWikiQuiz-Screenshot_example.png ├── latex_cleanings_argument.txt ├── .gitignore ├── requirements.txt ├── Dockerfile ├── user-config.py ├── demo └── demo_examples.csv ├── cache.json ├── .github └── workflows │ ├── docker-image.yml │ └── docker-publish.yml ├── latex_cleanings_simple_identifier.csv ├── latex_cleanings_simple_formula.csv ├── Citation.bib ├── benchmark_cache.py ├── module6_explanation_text_generation.py ├── module_unit_tests.py ├── module4_question_text_generation.py ├── module2_formula_rearrangement.py ├── static └── style.css ├── templates ├── student.html ├── teacher.html ├── my-form.html └── select.html ├── module3_identifier_value_generation.py ├── module5_solution_value_and_unit_check.py ├── module_outputs.py ├── module_workflow.py ├── app.py ├── module1_formula_and_identifier_retrieval.py ├── LICENSE └── README.md /evaluation/module2_formula_rearrangement/module2_description: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /evaluation/module4_question_text_generation/module4_description: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /evaluation/module3_identifier_value_generation/module3_description: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /evaluation/module5_solution_value_and_unit_check/module5_description: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /evaluation/module1_formula_and_identifier_retrieval/module1_description: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /images/N_generated_formula.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gipplab/PhysWikiQuiz/HEAD/images/N_generated_formula.png -------------------------------------------------------------------------------- /login/templates/._signup.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gipplab/PhysWikiQuiz/HEAD/login/templates/._signup.html -------------------------------------------------------------------------------- /old/PhysWikiQuiz-Screenshot.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gipplab/PhysWikiQuiz/HEAD/old/PhysWikiQuiz-Screenshot.jpg -------------------------------------------------------------------------------- /old/PhysWikiQuiz-Workflow.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gipplab/PhysWikiQuiz/HEAD/old/PhysWikiQuiz-Workflow.png -------------------------------------------------------------------------------- /images/N_questions_generated.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gipplab/PhysWikiQuiz/HEAD/images/N_questions_generated.png -------------------------------------------------------------------------------- /images/PhysWikiQuiz_workflow.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gipplab/PhysWikiQuiz/HEAD/images/PhysWikiQuiz_workflow.png -------------------------------------------------------------------------------- /PhysWikiQuiz-Screenshot_example.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gipplab/PhysWikiQuiz/HEAD/PhysWikiQuiz-Screenshot_example.png -------------------------------------------------------------------------------- /images/PhysWikiQuiz_acceleration.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gipplab/PhysWikiQuiz/HEAD/images/PhysWikiQuiz_acceleration.png -------------------------------------------------------------------------------- /images/PhysWikiQuiz_demo_speed.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gipplab/PhysWikiQuiz/HEAD/images/PhysWikiQuiz_demo_speed.gif -------------------------------------------------------------------------------- /images/unit_test_module_workflow.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gipplab/PhysWikiQuiz/HEAD/images/unit_test_module_workflow.png -------------------------------------------------------------------------------- /evaluation/PhysWikiQuiz_Challenges.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gipplab/PhysWikiQuiz/HEAD/evaluation/PhysWikiQuiz_Challenges.pdf -------------------------------------------------------------------------------- /evaluation/ResearchQuestionsTasks.docx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gipplab/PhysWikiQuiz/HEAD/evaluation/ResearchQuestionsTasks.docx -------------------------------------------------------------------------------- /images/PhysWikiQuiz-Workflow_white.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gipplab/PhysWikiQuiz/HEAD/images/PhysWikiQuiz-Workflow_white.png -------------------------------------------------------------------------------- /images/PhysWikiQuiz_demo_acceleration.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gipplab/PhysWikiQuiz/HEAD/images/PhysWikiQuiz_demo_acceleration.gif -------------------------------------------------------------------------------- /old/PhysWikiQuiz-Screenshot_correction.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gipplab/PhysWikiQuiz/HEAD/old/PhysWikiQuiz-Screenshot_correction.jpg -------------------------------------------------------------------------------- /images/PhysWikiQuiz_workflow_acceleration.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gipplab/PhysWikiQuiz/HEAD/images/PhysWikiQuiz_workflow_acceleration.png -------------------------------------------------------------------------------- /latex_cleanings_argument.txt: -------------------------------------------------------------------------------- 1 | \boldsymbol{x} 2 | \mathrm{x} 3 | \mathbf{x} 4 | \mathsymbol{x} 5 | \vec{x} 6 | \hat{x} 7 | \text{x} 8 | \mathcal{x} 9 | \mathit{x} -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | /evaluation/module_workflow/pywikibot.lwp 2 | /evaluation/module_workflow/latex_cleanings_argument.txt 3 | /evaluation/module_workflow/latex_cleanings_simple.csv 4 | -------------------------------------------------------------------------------- /evaluation/PhysWikiQuizvsCompetitors.csv: -------------------------------------------------------------------------------- 1 | System,Mr Watts Physics,physQuiz Equations,PhysWikiQuiz 2 | Concepts,36,8,469 (Wikidata) 3 | Questions per concept,20,20,unlimited 4 | -------------------------------------------------------------------------------- /requirements.txt: -------------------------------------------------------------------------------- 1 | Flask==2.0.2 2 | requests==2.26.0 3 | pywikibot==7.7.2 4 | wikitextparser==0.51.1 5 | SPARQLWrapper==1.8.2 6 | latex2sympy2==1.6.2 7 | sympy==1.7.1 8 | pandas==1.2.1 -------------------------------------------------------------------------------- /Dockerfile: -------------------------------------------------------------------------------- 1 | FROM python:3 2 | 3 | WORKDIR /app 4 | COPY ./requirements.txt /app/requirements.txt 5 | RUN pip install -r requirements.txt 6 | COPY . /app 7 | ENTRYPOINT ["python", "app.py"] -------------------------------------------------------------------------------- /user-config.py: -------------------------------------------------------------------------------- 1 | # -*- coding: utf-8 -*- 2 | 3 | # This is a sample file. You should use generate_user_files.py 4 | # to create your user-config.py file. 5 | 6 | mylang = 'en' 7 | family = 'wikipedia' -------------------------------------------------------------------------------- /evaluation/current_challenges.txt: -------------------------------------------------------------------------------- 1 | #Example item issues: 2 | #-Hooke's law 3 | #-mechanical impedance 4 | #-tangential velocity 5 | 6 | #Additional issues: 7 | #-phase velocity (Q13824) 8 | #-mechanical energy (Q184550) -------------------------------------------------------------------------------- /evaluation/module_workflow/unit_test_module_workflow_latex2sympy_evaluated(0).pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gipplab/PhysWikiQuiz/HEAD/evaluation/module_workflow/unit_test_module_workflow_latex2sympy_evaluated(0).pdf -------------------------------------------------------------------------------- /evaluation/module_workflow/unit_test_module_workflow_latex2sympy_evaluated(0).xlsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gipplab/PhysWikiQuiz/HEAD/evaluation/module_workflow/unit_test_module_workflow_latex2sympy_evaluated(0).xlsx -------------------------------------------------------------------------------- /login/templates/profile.html: -------------------------------------------------------------------------------- 1 | {% extends "base.html" %} 2 | 3 | {% block content %} 4 |