├── .DS_Store
├── .gitignore
├── LICENSE
├── README.md
├── main.py
├── requirements.txt
├── sci
├── Celestia
│ ├── __init__.py
│ ├── celestia.py
│ └── task.py
├── ChimeraX
│ ├── __init__.py
│ ├── chimerax.py
│ └── task.py
├── GrassGIS
│ ├── __init__.py
│ ├── grass.py
│ └── task.py
├── KAlgebra
│ ├── __init__.py
│ ├── kalgebra.py
│ └── task.py
├── Lean
│ ├── __init__.py
│ ├── format.py
│ ├── lean.py
│ └── task.py
├── Presets.py
├── Prompts.py
├── TeXstudio
│ ├── __init__.py
│ ├── task.py
│ └── texstudio.py
├── Template
│ ├── __init__.py
│ ├── task.py
│ └── template.py
├── Tester.py
├── __init__.py
├── base
│ ├── __init__.py
│ ├── agent.py
│ ├── community.py
│ ├── init.py
│ ├── log.py
│ ├── manager.py
│ ├── model.py
│ ├── override.py
│ ├── prompt.py
│ ├── relative.py
│ ├── task.py
│ └── utils.py
└── vm
│ ├── __init__.py
│ ├── utils.py
│ ├── vmanager.py
│ └── vtask.py
├── static
├── scienceboard_badge.png
├── scienceboard_badge_v0.png
├── scienceboard_overview.jpg
└── scienceboard_workflow.jpg
├── tasks
├── Dual
│ └── ChimeraX
│ │ ├── A-01.json
│ │ ├── A-02.json
│ │ ├── A-03.json
│ │ ├── A-04.json
│ │ ├── A-05.json
│ │ ├── A-06.json
│ │ ├── A-07.json
│ │ ├── A-08.json
│ │ ├── A-09.json
│ │ ├── A-10.json
│ │ ├── A-11.json
│ │ ├── B-01.json
│ │ ├── B-02.json
│ │ ├── B-03.json
│ │ ├── B-04.json
│ │ ├── B-05.json
│ │ ├── B-06.json
│ │ ├── B-07.json
│ │ ├── B-08.json
│ │ ├── C-01.json
│ │ ├── C-02.json
│ │ ├── C-03.json
│ │ ├── C-04.json
│ │ ├── C-05.json
│ │ ├── C-06.json
│ │ ├── C-07.json
│ │ ├── D-01.json
│ │ ├── D-02.json
│ │ └── D-03.json
├── Raw
│ ├── Lean
│ │ ├── A-01.json
│ │ ├── A-02.json
│ │ ├── A-03.json
│ │ ├── A-04.json
│ │ ├── A-05.json
│ │ ├── B-01.json
│ │ ├── B-02.json
│ │ ├── B-03.json
│ │ ├── B-04.json
│ │ ├── B-05.json
│ │ ├── B-06.json
│ │ ├── B-07.json
│ │ ├── C-01.json
│ │ ├── C-02.json
│ │ ├── C-03.json
│ │ ├── C-04.json
│ │ ├── C-05.json
│ │ ├── D-01.json
│ │ ├── D-02.json
│ │ ├── D-03.json
│ │ ├── D-04.json
│ │ ├── D-05.json
│ │ ├── D-06.json
│ │ ├── D-07.json
│ │ ├── E-01.json
│ │ └── E-02.json
│ ├── requirements.linux.txt
│ └── requirements.win.txt
└── VM
│ ├── Celestia
│ ├── A-01.json
│ ├── A-02.json
│ ├── A-03.json
│ ├── A-04.json
│ ├── A-05.json
│ ├── A-06.json
│ ├── A-07.json
│ ├── A-08.json
│ ├── B-01.json
│ ├── B-02.json
│ ├── B-03.json
│ ├── B-04.json
│ ├── B-05.json
│ ├── B-06.json
│ ├── B-07.json
│ ├── B-08.json
│ ├── B-09.json
│ ├── B-10.json
│ ├── B-11.json
│ ├── B-12.json
│ ├── C-01.json
│ ├── C-02.json
│ ├── C-03.json
│ ├── C-04.json
│ ├── C-05.json
│ ├── C-06.json
│ ├── C-07.json
│ ├── C-08.json
│ ├── C-09.json
│ ├── C-10.json
│ ├── D-01.json
│ ├── D-02.json
│ └── D-03.json
│ ├── ChimeraX
│ ├── A-01.json
│ ├── A-02.json
│ ├── A-03.json
│ ├── A-04.json
│ ├── A-05.json
│ ├── A-06.json
│ ├── A-07.json
│ ├── A-08.json
│ ├── A-09.json
│ ├── A-10.json
│ ├── A-11.json
│ ├── B-01.json
│ ├── B-02.json
│ ├── B-03.json
│ ├── B-04.json
│ ├── B-05.json
│ ├── B-06.json
│ ├── B-07.json
│ ├── B-08.json
│ ├── C-01.json
│ ├── C-02.json
│ ├── C-03.json
│ ├── C-04.json
│ ├── C-05.json
│ ├── C-06.json
│ ├── C-07.json
│ ├── D-01.json
│ ├── D-02.json
│ └── D-03.json
│ ├── GrassGIS
│ ├── A-01.json
│ ├── A-02.json
│ ├── A-03.json
│ ├── A-04.json
│ ├── A-05.json
│ ├── A-06.json
│ ├── A-07.json
│ ├── A-08.json
│ ├── A-09.json
│ ├── A-10.json
│ ├── B-01.json
│ ├── B-02.json
│ ├── B-03.json
│ ├── B-04.json
│ ├── B-05.json
│ ├── B-06.json
│ ├── B-07.json
│ ├── B-08.json
│ ├── B-09.json
│ ├── B-10.json
│ ├── B-11.json
│ ├── B-12.json
│ ├── B-13.json
│ ├── C-01.json
│ ├── C-02.json
│ ├── C-03.json
│ ├── C-04.json
│ ├── C-05.json
│ ├── C-06.json
│ ├── C-07.json
│ ├── D-01.json
│ ├── D-02.json
│ ├── D-03.json
│ └── D-04.json
│ ├── KAlgebra
│ ├── A-01.json
│ ├── A-02.json
│ ├── A-03.json
│ ├── A-04.json
│ ├── B-01.json
│ ├── B-02.json
│ ├── B-03.json
│ ├── B-04.json
│ ├── B-05.json
│ ├── B-06.json
│ ├── B-07.json
│ ├── C-01.json
│ ├── C-02.json
│ ├── C-03.json
│ ├── C-04.json
│ ├── C-05.json
│ ├── C-06.json
│ ├── C-07.json
│ ├── C-08.json
│ ├── C-09.json
│ ├── C-10.json
│ ├── C-11.json
│ ├── C-12.json
│ ├── C-13.json
│ ├── C-14.json
│ ├── C-15.json
│ ├── C-16.json
│ ├── C-17.json
│ ├── D-01.json
│ ├── D-02.json
│ └── D-03.json
│ ├── Lean
│ ├── A-01.json
│ ├── A-02.json
│ ├── A-03.json
│ ├── A-04.json
│ ├── A-05.json
│ ├── B-01.json
│ ├── B-02.json
│ ├── B-03.json
│ ├── B-04.json
│ ├── B-05.json
│ ├── B-06.json
│ ├── B-07.json
│ ├── C-01.json
│ ├── C-02.json
│ ├── C-03.json
│ ├── C-04.json
│ ├── C-05.json
│ ├── D-01.json
│ ├── D-02.json
│ ├── D-03.json
│ ├── D-04.json
│ ├── D-05.json
│ ├── D-06.json
│ ├── D-07.json
│ ├── E-01.json
│ └── E-02.json
│ └── TeXstudio
│ ├── A-01.json
│ ├── A-02.json
│ ├── A-03.json
│ ├── A-04.json
│ ├── B-01.json
│ ├── B-02.json
│ ├── B-03.json
│ ├── B-04.json
│ ├── C-01.json
│ ├── C-02.json
│ ├── C-03.json
│ ├── C-04.json
│ ├── C-05.json
│ ├── C-06.json
│ ├── D-01.json
│ └── D-02.json
└── vm_config
├── manual.md
├── pack
├── DEBIAN
│ └── control
└── home
│ └── user
│ └── Downloads
│ └── ChimeraX
│ ├── AlphaFold
│ ├── AF-A8Z1J3-F1-model_v4.cif
│ └── alphafold_database.json
│ ├── PDB
│ ├── 102l.cif
│ ├── 1dns.cif
│ ├── 251d.cif
│ ├── 2olx.cif
│ ├── 2olx.cif.1
│ ├── 3bna.cif
│ ├── 3ppd.cif
│ ├── 4r0u.cif
│ └── 4tut.cif
│ └── UniProt
│ └── A8Z1J3.xml
├── pyxcursor.py
├── reset.sh
├── server.py
└── service.conf
/.DS_Store:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OS-Copilot/ScienceBoard/fa9665a59bd90ad2b3d558d1587236c9d5e741de/.DS_Store
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | /.temp
2 | /.in
3 | /.out
4 |
5 | .vscode
6 | .VSCodeCounter
7 |
8 | /logs/*
9 | /temp/*
10 | /vmware/*
11 |
12 | .vmware_lck
13 | .vmware_vms
14 |
--------------------------------------------------------------------------------
/LICENSE:
--------------------------------------------------------------------------------
1 | MIT License
2 |
3 | Copyright (c) 2025 [fullname]
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy
6 | of this software and associated documentation files (the "Software"), to deal
7 | in the Software without restriction, including without limitation the rights
8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | copies of the Software, and to permit persons to whom the Software is
10 | furnished to do so, subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in all
13 | copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | SOFTWARE.
22 |
--------------------------------------------------------------------------------
/requirements.txt:
--------------------------------------------------------------------------------
1 | requests==2.31.0
2 | desktop-env==0.1.22
3 |
--------------------------------------------------------------------------------
/sci/Celestia/__init__.py:
--------------------------------------------------------------------------------
1 | import sys
2 |
3 | sys.dont_write_bytecode = True
4 | from .celestia import RawManager, VMManager
5 | from .task import RawTask, VMTask
6 |
--------------------------------------------------------------------------------
/sci/ChimeraX/__init__.py:
--------------------------------------------------------------------------------
1 | import sys
2 |
3 | sys.dont_write_bytecode = True
4 | from .chimerax import RawManager, VMManager
5 | from .task import RawTask, VMTask
6 |
--------------------------------------------------------------------------------
/sci/GrassGIS/__init__.py:
--------------------------------------------------------------------------------
1 | import sys
2 |
3 | sys.dont_write_bytecode = True
4 | from .grass import RawManager, VMManager
5 | from .task import RawTask, VMTask
6 |
--------------------------------------------------------------------------------
/sci/KAlgebra/__init__.py:
--------------------------------------------------------------------------------
1 | import sys
2 |
3 | sys.dont_write_bytecode = True
4 | from .kalgebra import RawManager, VMManager
5 | from .task import RawTask, VMTask
6 |
--------------------------------------------------------------------------------
/sci/Lean/__init__.py:
--------------------------------------------------------------------------------
1 | import sys
2 |
3 | sys.dont_write_bytecode = True
4 | from .lean import RawManager, VMManager
5 | from .task import RawTask, VMTask
6 |
--------------------------------------------------------------------------------
/sci/TeXstudio/__init__.py:
--------------------------------------------------------------------------------
1 | import sys
2 |
3 | sys.dont_write_bytecode = True
4 | from .texstudio import RawManager, VMManager
5 | from .task import RawTask, VMTask
6 |
--------------------------------------------------------------------------------
/sci/TeXstudio/texstudio.py:
--------------------------------------------------------------------------------
1 | import sys
2 | import os
3 | import subprocess
4 |
5 | from typing import Self
6 | from PIL import Image
7 |
8 | sys.dont_write_bytecode = True
9 | from ..base import Manager
10 | from ..vm import VManager
11 |
12 |
13 | class RawManager(Manager):
14 | def __init__(self, version: str = "0.1") -> None:
15 | assert os.system("texstudio --version") == 0
16 | super().__init__(version)
17 |
18 | def __call__(self, _) -> None:
19 | raise NotImplementedError
20 |
21 | def __enter__(self) -> Self:
22 | self.process = subprocess.Popen(["texstudio"], text=True)
23 | Manager.pause()
24 | return super().__enter__()
25 |
26 | def __exit__(self, exc_type, exc_value, traceback) -> None:
27 | self.process.kill()
28 | super().__exit__(exc_type, exc_value, traceback)
29 |
30 | def screenshot(self) -> Image.Image:
31 | raise NotImplementedError
32 |
33 |
34 | class VMManager(VManager):
35 | def __init__(
36 | self,
37 | *args,
38 | port: int = 8000,
39 | **kwargs
40 | ) -> None:
41 | super().__init__(*args, **kwargs)
42 |
43 | assert port in range(1024, 65536)
44 | self.port = port
45 |
46 | def _chimerax_execute(self, command: str):
47 | return self._request(
48 | f"POST:{VManager.SERVER_PORT}/chimerax/run",
49 | param={"json": {"command": command}}
50 | ).json()["error"] is None
51 |
--------------------------------------------------------------------------------
/sci/Template/__init__.py:
--------------------------------------------------------------------------------
1 | import sys
2 |
3 | sys.dont_write_bytecode = True
4 | from .template import RawManager, VMManager
5 | from .task import RawTask, VMTask
6 |
--------------------------------------------------------------------------------
/sci/Template/task.py:
--------------------------------------------------------------------------------
1 | import sys
2 |
3 | sys.dont_write_bytecode = True
4 | from ..base import Task
5 | from ..vm import VTask
6 | from .template import RawManager, VMManager
7 |
8 |
9 | class TaskMixin:
10 | def __init__(self) -> None:
11 | raise
12 |
13 | @Task._config_handler
14 | def check_config(self, eval_item) -> None:
15 | ...
16 |
17 |
18 | class RawTask(Task, TaskMixin):
19 | def __init__(
20 | self,
21 | config_path: str,
22 | manager: RawManager,
23 | *args,
24 | **kwargs
25 | ) -> None:
26 | # to enable Pylance type checker
27 | assert isinstance(manager, RawManager)
28 | self.manager = manager
29 |
30 | super().__init__(config_path, manager, *args, **kwargs)
31 | self.check_config()
32 |
33 | def _init(self) -> bool:
34 | ...
35 | return True
36 |
37 | @Task._stop_handler
38 | def eval(self) -> bool:
39 | raise NotImplementedError
40 |
41 |
42 | class VMTask(VTask, TaskMixin):
43 | def __init__(
44 | self,
45 | config_path: str,
46 | manager: VMManager,
47 | *args,
48 | **kwargs
49 | ) -> None:
50 | # to enable Pylance type checker
51 | assert isinstance(manager, VMManager)
52 | self.manager = manager
53 |
54 | super().__init__(config_path, manager, *args, **kwargs)
55 | self.check_config()
56 |
57 | @Task._stop_handler
58 | def eval(self) -> bool:
59 | raise NotImplementedError
60 |
--------------------------------------------------------------------------------
/sci/Template/template.py:
--------------------------------------------------------------------------------
1 | import sys
2 |
3 | from typing import Self
4 | from PIL import Image
5 |
6 | sys.dont_write_bytecode = True
7 | from ..base import Manager
8 | from ..vm import VManager
9 |
10 |
11 | class ManagerMixin:
12 | def __init__(self) -> None:
13 | raise
14 |
15 |
16 | class RawManager(Manager, ManagerMixin):
17 | def __init__(self, version: str) -> None:
18 | super().__init__(version)
19 |
20 | def __call__(self) -> None:
21 | raise NotImplementedError
22 |
23 | def __enter__(self) -> Self:
24 | return super().__enter__()
25 |
26 | def __exit__(self, exc_type, exc_value, traceback) -> None:
27 | super().__exit__(exc_type, exc_value, traceback)
28 |
29 | def screenshot(self) -> Image.Image:
30 | raise NotImplementedError
31 |
32 |
33 | class VMManager(VManager, ManagerMixin):
34 | def __init__(self, *args, **kwargs) -> None:
35 | super().__init__(*args, **kwargs)
36 |
--------------------------------------------------------------------------------
/sci/__init__.py:
--------------------------------------------------------------------------------
1 | import sys
2 | from typing import Annotated
3 |
4 | sys.dont_write_bytecode = True
5 | from .base import utils
6 | from .base import TypeSort
7 | from .base import RawType
8 | from .base import VMType
9 |
10 | from .base import Log
11 | from .base import VirtualLog
12 | from .base import GLOBAL_VLOG
13 |
14 | from .base import Content
15 | from .base import TextContent
16 | from .base import ImageContent
17 | from .base import Message
18 | from .base import Model
19 |
20 | from .base import ModelType
21 | from .base import RoleType
22 |
23 | from .base import Primitive
24 | from .base import CodeLike
25 |
26 | from .base import PromptFactory
27 | from .base import AIOPromptFactory
28 | from .base import PlannerPromptFactory
29 | from .base import GrounderPromptFactory
30 |
31 | from .base import Overflow
32 | from .base import Agent
33 | from .base import AIOAgent
34 | from .base import PlannerAgent
35 | from .base import GrounderAgent
36 |
37 | from .base import Community
38 | from .base import AllInOne
39 | from .base import SeeAct
40 |
41 | from .base import OBS
42 | from .base import Manager
43 | from .base import Task
44 |
45 | from .vm import VManager
46 | from .vm import VTask
47 |
48 | from . import ChimeraX
49 | from . import KAlgebra
50 | from . import Celestia
51 | from . import TeXstudio
52 | from . import Lean
53 |
54 | from . import Presets
55 | from . import Prompts
56 |
57 | from .Tester import Counter
58 | from .Tester import Automata
59 |
60 | from .Tester import TaskInfo
61 | from .Tester import TaskGroup
62 | from .Tester import Tester
63 |
64 | # DO NOT IMPORT TEMPLATE
65 | Template = NotImplemented
66 |
--------------------------------------------------------------------------------
/sci/base/__init__.py:
--------------------------------------------------------------------------------
1 | import sys
2 |
3 | sys.dont_write_bytecode = True
4 | from . import utils
5 | from .utils import TypeSort
6 | from .utils import RawType
7 | from .utils import VMType
8 |
9 | from .log import Log
10 | from .log import VirtualLog
11 | from .log import GLOBAL_VLOG
12 |
13 | from .model import Content
14 | from .model import TextContent
15 | from .model import ImageContent
16 | from .model import Message
17 | from .model import Model
18 |
19 | from .model import ModelType
20 | from .model import RoleType
21 |
22 | from .prompt import Primitive
23 | from .prompt import CodeLike
24 |
25 | from .prompt import PromptFactory
26 | from .prompt import AIOPromptFactory
27 | from .prompt import PlannerPromptFactory
28 | from .prompt import GrounderPromptFactory
29 |
30 | from .agent import Overflow
31 | from .agent import Agent
32 | from .agent import AIOAgent
33 | from .agent import PlannerAgent
34 | from .agent import GrounderAgent
35 |
36 | from .community import Community
37 | from .community import AllInOne
38 | from .community import SeeAct
39 |
40 | from .manager import OBS
41 | from .manager import Manager
42 |
43 | from .task import Task
44 |
--------------------------------------------------------------------------------
/sci/base/init.py:
--------------------------------------------------------------------------------
1 | import sys
2 | import os
3 | import urllib.request
4 |
5 | from typing import TYPE_CHECKING
6 |
7 | sys.dont_write_bytecode = True
8 | if TYPE_CHECKING:
9 | from ..vm.vmanager import VManager
10 |
11 |
12 | def raw_download(url: str, path: str) -> bool:
13 | path = os.path.expanduser(path)
14 | urllib.request.urlretrieve(url, path)
15 | return True
16 |
17 | def raw_touch(text: str, path: str) -> bool:
18 | path = os.path.expanduser(path)
19 | with open(path, mode="w") as writable:
20 | writable.write(text)
21 | return True
22 |
23 | def vm_download(url: str, path: str, manager: "VManager") -> bool:
24 | filename = os.path.split(path)[1]
25 | temp_path = os.path.join(manager.temp_dir, filename)
26 | if raw_download(url, temp_path):
27 | # do not use manager.write_file because it only supports textual files
28 | return manager._vmrun("CopyFileFromHostToGuest", temp_path, path)[1]
29 |
30 | def vm_touch(text: str, path: str, manager: "VManager") -> bool:
31 | return manager.write_file(path, text)
32 |
--------------------------------------------------------------------------------
/sci/base/override.py:
--------------------------------------------------------------------------------
1 | import dataclasses
2 | from typing import Dict, Any
3 |
4 | # modify asdict() for class Content
5 | # ref: https://stackoverflow.com/a/78289335
6 | _asdict_inner_actual = dataclasses._asdict_inner
7 | def _asdict_inner(obj, dict_factory):
8 | if dataclasses._is_dataclass_instance(obj):
9 | if getattr(obj, "__dict_factory_override__", None):
10 | user_dict = obj.__dict_factory_override__()
11 | for key, value in user_dict.items():
12 | if dataclasses._is_dataclass_instance(value):
13 | user_dict[key] = _asdict_inner(value, dict_factory)
14 | return user_dict
15 | return _asdict_inner_actual(obj, dict_factory)
16 | dataclasses._asdict_inner = _asdict_inner
17 |
18 | def eliminate_nonetype(self) -> Dict[str, Any]:
19 | return {
20 | key: getattr(self, key)
21 | for key in self.__dataclass_fields__
22 | if getattr(self, key) is not None
23 | }
24 |
--------------------------------------------------------------------------------
/sci/base/relative.py:
--------------------------------------------------------------------------------
1 | import inspect
2 |
3 | ORIGINAL = {}
4 | ABSOLUTE = False
5 |
6 | def switch(func_name, xRange=(0, 1), yRange=(0, 1), pos=(0, 1), offset=False):
7 | global ORIGINAL, ABSOLUTE
8 | ORIGINAL[func_name] = getattr(__import__("pyautogui"), func_name)
9 |
10 | def new_func(*args, **kwargs):
11 | global ORIGINAL
12 | if hasattr(__import__("pyautogui"), inspect.stack()[1].function):
13 | ORIGINAL[func_name](*args, **kwargs)
14 | return
15 |
16 | xStr, yStr = "x", "y"
17 | xRel, yRel = 0, 0
18 | screenWidth, screenHeight = __import__("pyautogui").size()
19 |
20 | if offset:
21 | xStr += "Offset"
22 | yStr += "Offset"
23 |
24 | if xStr in kwargs and yStr in kwargs:
25 | xRel, yRel = kwargs[xStr], kwargs[yStr]
26 | del kwargs[xStr], kwargs[yStr]
27 | else:
28 | xRel, yRel = args[pos[0]], args[pos[1]]
29 | args = [item for index, item in enumerate(args) if index not in pos]
30 |
31 | xAbs, yAbs = (
32 | (xRel - xRange[0]) / xRange[1] * screenWidth,
33 | (yRel - yRange[0]) / yRange[1] * screenHeight
34 | )
35 | ORIGINAL[func_name](xAbs, yAbs, *args, **kwargs)
36 |
37 | setattr(__import__("pyautogui"), func_name, new_func)
38 |
39 | switch("moveTo")
40 | switch("moveRel", offset=True)
41 | switch("dragTo")
42 | switch("dragRel", offset=True)
43 | switch("click")
44 | switch("rightClick")
45 | switch("middleClick")
46 | switch("doubleClick")
47 | switch("tripleClick")
48 | switch("mouseDown")
49 | switch("mouseUp")
50 |
--------------------------------------------------------------------------------
/sci/vm/__init__.py:
--------------------------------------------------------------------------------
1 | import sys
2 |
3 | sys.dont_write_bytecode = True
4 | from .vmanager import VManager
5 | from .vtask import VTask
6 |
--------------------------------------------------------------------------------
/static/scienceboard_badge.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OS-Copilot/ScienceBoard/fa9665a59bd90ad2b3d558d1587236c9d5e741de/static/scienceboard_badge.png
--------------------------------------------------------------------------------
/static/scienceboard_badge_v0.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OS-Copilot/ScienceBoard/fa9665a59bd90ad2b3d558d1587236c9d5e741de/static/scienceboard_badge_v0.png
--------------------------------------------------------------------------------
/static/scienceboard_overview.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OS-Copilot/ScienceBoard/fa9665a59bd90ad2b3d558d1587236c9d5e741de/static/scienceboard_overview.jpg
--------------------------------------------------------------------------------
/static/scienceboard_workflow.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/OS-Copilot/ScienceBoard/fa9665a59bd90ad2b3d558d1587236c9d5e741de/static/scienceboard_workflow.jpg
--------------------------------------------------------------------------------
/tasks/Dual/ChimeraX/A-01.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "ChimeraX",
3 | "sort": "VM",
4 | "steps": 5,
5 | "instruction": "Fetch 2OLX from PDB in ChimeraX.",
6 | "version": "0.1",
7 | "snapshot": "sci_bench",
8 | "initialize": [
9 | {
10 | "func": "execute",
11 | "command": [
12 | "rm",
13 | "/home/user/.local/share/ChimeraX/commands",
14 | "/home/user/.local/share/ChimeraX/file_history",
15 | "/home/user/.local/share/ChimeraX/preregistration"
16 | ]
17 | },
18 | {
19 | "func": "execute",
20 | "command": "rm -f /home/user/.config/ChimeraX/ui-*",
21 | "shell": true
22 | },
23 | {
24 | "func": "launch",
25 | "wait": 7.5,
26 | "command": [
27 | "chimerax",
28 | "--cmd",
29 | "remotecontrol rest start json true port «PORTLIKE»"
30 | ]
31 | },
32 | {
33 | "func": "clear_log"
34 | },
35 | {
36 | "func": "destroy",
37 | "wait": 2.5
38 | }
39 | ],
40 | "evaluate": [
41 | {
42 | "type": "states",
43 | "key": "_state_containers.models._models.(1,)._name",
44 | "value": "2olx"
45 | }
46 | ]
47 | }
48 |
--------------------------------------------------------------------------------
/tasks/Dual/ChimeraX/A-02.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "ChimeraX",
3 | "sort": "VM",
4 | "steps": 5,
5 | "instruction": "Load ~/Downloads/prot.cif in ChimeraX.",
6 | "version": "0.1",
7 | "snapshot": "sci_bench",
8 | "initialize": [
9 | {
10 | "func": "execute",
11 | "command": [
12 | "rm",
13 | "/home/user/.local/share/ChimeraX/commands",
14 | "/home/user/.local/share/ChimeraX/file_history",
15 | "/home/user/.local/share/ChimeraX/preregistration"
16 | ]
17 | },
18 | {
19 | "func": "execute",
20 | "command": "rm -f /home/user/.config/ChimeraX/ui-*",
21 | "shell": true
22 | },
23 | {
24 | "func": "launch",
25 | "wait": 7.5,
26 | "command": [
27 | "chimerax",
28 | "--cmd",
29 | "remotecontrol rest start json true port «PORTLIKE»"
30 | ]
31 | },
32 | {
33 | "func": "clear_log"
34 | },
35 | {
36 | "func": "download",
37 | "url": "https://files.rcsb.org/download/3ppd.cif",
38 | "path": "/home/user/Downloads/prot.cif"
39 | },
40 | {
41 | "func": "destroy",
42 | "wait": 2.5
43 | }
44 | ],
45 | "evaluate": [
46 | {
47 | "type": "states",
48 | "key": "_state_containers.models._models.(1,)._name",
49 | "value": "prot.cif"
50 | }
51 | ]
52 | }
53 |
--------------------------------------------------------------------------------
/tasks/Dual/ChimeraX/A-03.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "ChimeraX",
3 | "sort": "VM",
4 | "steps": 5,
5 | "instruction": "Change the display of the model to ball and stick style in ChimeraX.",
6 | "version": "0.1",
7 | "snapshot": "sci_bench",
8 | "initialize": [
9 | {
10 | "func": "execute",
11 | "command": [
12 | "rm",
13 | "/home/user/.local/share/ChimeraX/commands",
14 | "/home/user/.local/share/ChimeraX/file_history",
15 | "/home/user/.local/share/ChimeraX/preregistration"
16 | ]
17 | },
18 | {
19 | "func": "execute",
20 | "command": "rm -f /home/user/.config/ChimeraX/ui-*",
21 | "shell": true
22 | },
23 | {
24 | "func": "launch",
25 | "wait": 7.5,
26 | "command": [
27 | "chimerax",
28 | "--cmd",
29 | "remotecontrol rest start json true port «PORTLIKE»"
30 | ]
31 | },
32 | {
33 | "func": "clear_log"
34 | },
35 | {
36 | "func": "open",
37 | "name": "3ppd"
38 | },
39 | {
40 | "func": "turn",
41 | "axis": "y",
42 | "angle": 1
43 | },
44 | {
45 | "func": "destroy",
46 | "wait": 2.5
47 | }
48 | ],
49 | "evaluate": [
50 | {
51 | "type": "states",
52 | "key": "_state_containers.models._models.(1,)._redraw_needed.cached_drawing_bounds.xyz_min",
53 | "value": "[ -0.30499998 -5.4719996 -11.4869995 ]"
54 | }
55 | ]
56 | }
57 |
--------------------------------------------------------------------------------
/tasks/Dual/ChimeraX/A-07.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "ChimeraX",
3 | "sort": "VM",
4 | "steps": 5,
5 | "instruction": "Change the background to grey color in ChimeraX.",
6 | "version": "0.1",
7 | "snapshot": "sci_bench",
8 | "initialize": [
9 | {
10 | "func": "execute",
11 | "command": [
12 | "rm",
13 | "/home/user/.local/share/ChimeraX/commands",
14 | "/home/user/.local/share/ChimeraX/file_history",
15 | "/home/user/.local/share/ChimeraX/preregistration"
16 | ]
17 | },
18 | {
19 | "func": "execute",
20 | "command": "rm -f /home/user/.config/ChimeraX/ui-*",
21 | "shell": true
22 | },
23 | {
24 | "func": "launch",
25 | "wait": 7.5,
26 | "command": [
27 | "chimerax",
28 | "--cmd",
29 | "remotecontrol rest start json true port «PORTLIKE»"
30 | ]
31 | },
32 | {
33 | "func": "clear_log"
34 | },
35 | {
36 | "func": "open",
37 | "name": "1dns"
38 | },
39 | {
40 | "func": "turn",
41 | "axis": "y",
42 | "angle": 1
43 | },
44 | {
45 | "func": "destroy",
46 | "wait": 2.5
47 | }
48 | ],
49 | "evaluate": [
50 | {
51 | "type": "states",
52 | "key": "_state_containers.models._models.(1,)._atoms_drawing._draw_shape.bindings._opengl_context.window.view._background_rgba",
53 | "value": "[0.5019608 0.5019608 0.5019608 0. ]"
54 | }
55 | ]
56 | }
57 |
--------------------------------------------------------------------------------
/tasks/Dual/ChimeraX/A-11.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "ChimeraX",
3 | "sort": "VM",
4 | "steps": 5,
5 | "instruction": "Show nucleotides as ladders of H-bond in ChimeraX.",
6 | "version": "0.1",
7 | "snapshot": "sci_bench",
8 | "initialize": [
9 | {
10 | "func": "execute",
11 | "command": [
12 | "rm",
13 | "/home/user/.local/share/ChimeraX/commands",
14 | "/home/user/.local/share/ChimeraX/file_history",
15 | "/home/user/.local/share/ChimeraX/preregistration"
16 | ]
17 | },
18 | {
19 | "func": "execute",
20 | "command": "rm -f /home/user/.config/ChimeraX/ui-*",
21 | "shell": true
22 | },
23 | {
24 | "func": "launch",
25 | "wait": 7.5,
26 | "command": [
27 | "chimerax",
28 | "--cmd",
29 | "remotecontrol rest start json true port «PORTLIKE»"
30 | ]
31 | },
32 | {
33 | "func": "clear_log"
34 | },
35 | {
36 | "func": "open",
37 | "name": "3bna"
38 | },
39 | {
40 | "func": "turn",
41 | "axis": "y",
42 | "angle": 1
43 | },
44 | {
45 | "func": "destroy",
46 | "wait": 2.5
47 | }
48 | ],
49 | "evaluate": [
50 | {
51 | "type": "states",
52 | "key": "_state_containers.models._models.(1,)._ladder_params.stubs_only",
53 | "value": false
54 | }
55 | ]
56 | }
57 |
--------------------------------------------------------------------------------
/tasks/Dual/ChimeraX/B-07.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "ChimeraX",
3 | "sort": "VM",
4 | "steps": 10,
5 | "instruction": "Add hydrogens with method of 'steric only' in ChimeraX.",
6 | "version": "0.1",
7 | "snapshot": "sci_bench",
8 | "initialize": [
9 | {
10 | "func": "execute",
11 | "command": [
12 | "rm",
13 | "/home/user/.local/share/ChimeraX/commands",
14 | "/home/user/.local/share/ChimeraX/file_history",
15 | "/home/user/.local/share/ChimeraX/preregistration"
16 | ]
17 | },
18 | {
19 | "func": "execute",
20 | "command": "rm -f /home/user/.config/ChimeraX/ui-*",
21 | "shell": true
22 | },
23 | {
24 | "func": "launch",
25 | "wait": 7.5,
26 | "command": [
27 | "chimerax",
28 | "--cmd",
29 | "remotecontrol rest start json true port «PORTLIKE»"
30 | ]
31 | },
32 | {
33 | "func": "clear_log"
34 | },
35 | {
36 | "func": "open",
37 | "name": "4r0u"
38 | },
39 | {
40 | "func": "turn",
41 | "axis": "y",
42 | "angle": 1
43 | },
44 | {
45 | "func": "destroy",
46 | "wait": 2.5
47 | }
48 | ],
49 | "evaluate": [
50 | {
51 | "type": "states",
52 | "find": "lambda key, value: key.endswith('page_source')",
53 | "key": "lambda key: key",
54 | "pattern": "termini:
61 hydrogens added"
55 | }
56 | ]
57 | }
58 |
--------------------------------------------------------------------------------
/tasks/Dual/ChimeraX/B-08.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "ChimeraX",
3 | "sort": "VM",
4 | "steps": 5,
5 | "instruction": "Define the axes by water molecules of /A HOH 107 and /A HOH 108 in ChimeraX.",
6 | "version": "0.1",
7 | "snapshot": "sci_bench",
8 | "initialize": [
9 | {
10 | "func": "execute",
11 | "command": [
12 | "rm",
13 | "/home/user/.local/share/ChimeraX/commands",
14 | "/home/user/.local/share/ChimeraX/file_history",
15 | "/home/user/.local/share/ChimeraX/preregistration"
16 | ]
17 | },
18 | {
19 | "func": "execute",
20 | "command": "rm -f /home/user/.config/ChimeraX/ui-*",
21 | "shell": true
22 | },
23 | {
24 | "func": "launch",
25 | "wait": 7.5,
26 | "command": [
27 | "chimerax",
28 | "--cmd",
29 | "remotecontrol rest start json true port «PORTLIKE»"
30 | ]
31 | },
32 | {
33 | "func": "clear_log"
34 | },
35 | {
36 | "func": "open",
37 | "name": "4r0u"
38 | },
39 | {
40 | "func": "turn",
41 | "axis": "y",
42 | "angle": 1
43 | },
44 | {
45 | "func": "destroy",
46 | "wait": 2.5
47 | }
48 | ],
49 | "evaluate": [
50 | {
51 | "type": "stop",
52 | "value": "FAIL"
53 | }
54 | ]
55 | }
56 |
--------------------------------------------------------------------------------
/tasks/Dual/ChimeraX/C-01.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "ChimeraX",
3 | "sort": "VM",
4 | "steps": 5,
5 | "instruction": "Answer the question: what is the name of residue id /A:6?",
6 | "version": "0.1",
7 | "snapshot": "sci_bench",
8 | "initialize": [
9 | {
10 | "func": "execute",
11 | "command": [
12 | "rm",
13 | "/home/user/.local/share/ChimeraX/commands",
14 | "/home/user/.local/share/ChimeraX/file_history",
15 | "/home/user/.local/share/ChimeraX/preregistration"
16 | ]
17 | },
18 | {
19 | "func": "execute",
20 | "command": "rm -f /home/user/.config/ChimeraX/ui-*",
21 | "shell": true
22 | },
23 | {
24 | "func": "launch",
25 | "wait": 7.5,
26 | "command": [
27 | "chimerax",
28 | "--cmd",
29 | "remotecontrol rest start json true port «PORTLIKE»"
30 | ]
31 | },
32 | {
33 | "func": "clear_log"
34 | },
35 | {
36 | "func": "open",
37 | "name": "3ppd"
38 | },
39 | {
40 | "func": "turn",
41 | "axis": "y",
42 | "angle": 1
43 | },
44 | {
45 | "func": "destroy",
46 | "wait": 2.5
47 | }
48 | ],
49 | "evaluate": [
50 | {
51 | "type": "stop",
52 | "value": "ANS",
53 | "args": ["ASN"]
54 | }
55 | ],
56 | "ans": "ANS ASN"
57 | }
58 |
--------------------------------------------------------------------------------
/tasks/Dual/ChimeraX/C-02.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "ChimeraX",
3 | "sort": "VM",
4 | "steps": 5,
5 | "instruction": "Submit your answer: the number of oxygen atoms in the current model.",
6 | "version": "0.1",
7 | "snapshot": "sci_bench",
8 | "initialize": [
9 | {
10 | "func": "execute",
11 | "command": [
12 | "rm",
13 | "/home/user/.local/share/ChimeraX/commands",
14 | "/home/user/.local/share/ChimeraX/file_history",
15 | "/home/user/.local/share/ChimeraX/preregistration"
16 | ]
17 | },
18 | {
19 | "func": "execute",
20 | "command": "rm -f /home/user/.config/ChimeraX/ui-*",
21 | "shell": true
22 | },
23 | {
24 | "func": "launch",
25 | "wait": 7.5,
26 | "command": [
27 | "chimerax",
28 | "--cmd",
29 | "remotecontrol rest start json true port «PORTLIKE»"
30 | ]
31 | },
32 | {
33 | "func": "clear_log"
34 | },
35 | {
36 | "func": "open",
37 | "name": "2olx"
38 | },
39 | {
40 | "func": "turn",
41 | "axis": "y",
42 | "angle": 1
43 | },
44 | {
45 | "func": "destroy",
46 | "wait": 2.5
47 | }
48 | ],
49 | "evaluate": [
50 | {
51 | "type": "stop",
52 | "value": "ANS",
53 | "args": ["9"]
54 | }
55 | ],
56 | "ans": "ANS 9"
57 | }
58 |
--------------------------------------------------------------------------------
/tasks/Dual/ChimeraX/C-03.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "ChimeraX",
3 | "sort": "VM",
4 | "steps": 5,
5 | "instruction": "Submit your answer: DNA sequence of Chain A in upper case.",
6 | "version": "0.1",
7 | "snapshot": "sci_bench",
8 | "initialize": [
9 | {
10 | "func": "execute",
11 | "command": [
12 | "rm",
13 | "/home/user/.local/share/ChimeraX/commands",
14 | "/home/user/.local/share/ChimeraX/file_history",
15 | "/home/user/.local/share/ChimeraX/preregistration"
16 | ]
17 | },
18 | {
19 | "func": "execute",
20 | "command": "rm -f /home/user/.config/ChimeraX/ui-*",
21 | "shell": true
22 | },
23 | {
24 | "func": "launch",
25 | "wait": 7.5,
26 | "command": [
27 | "chimerax",
28 | "--cmd",
29 | "remotecontrol rest start json true port «PORTLIKE»"
30 | ]
31 | },
32 | {
33 | "func": "clear_log"
34 | },
35 | {
36 | "func": "open",
37 | "name": "251d"
38 | },
39 | {
40 | "func": "turn",
41 | "axis": "y",
42 | "angle": 1
43 | },
44 | {
45 | "func": "destroy",
46 | "wait": 2.5
47 | }
48 | ],
49 | "evaluate": [
50 | {
51 | "type": "stop",
52 | "value": "ANS",
53 | "args": ["CTCGAG"]
54 | }
55 | ],
56 | "ans": "ANS CTCGAG"
57 | }
58 |
--------------------------------------------------------------------------------
/tasks/Dual/ChimeraX/C-04.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "ChimeraX",
3 | "sort": "VM",
4 | "steps": 5,
5 | "instruction": "Submit your answer: the number of Hydrogen atoms in /A:1.",
6 | "version": "0.1",
7 | "snapshot": "sci_bench",
8 | "initialize": [
9 | {
10 | "func": "execute",
11 | "command": [
12 | "rm",
13 | "/home/user/.local/share/ChimeraX/commands",
14 | "/home/user/.local/share/ChimeraX/file_history",
15 | "/home/user/.local/share/ChimeraX/preregistration"
16 | ]
17 | },
18 | {
19 | "func": "execute",
20 | "command": "rm -f /home/user/.config/ChimeraX/ui-*",
21 | "shell": true
22 | },
23 | {
24 | "func": "launch",
25 | "wait": 7.5,
26 | "command": [
27 | "chimerax",
28 | "--cmd",
29 | "remotecontrol rest start json true port «PORTLIKE»"
30 | ]
31 | },
32 | {
33 | "func": "clear_log"
34 | },
35 | {
36 | "func": "open",
37 | "name": "4r0u"
38 | },
39 | {
40 | "func": "turn",
41 | "axis": "y",
42 | "angle": 1
43 | },
44 | {
45 | "func": "destroy",
46 | "wait": 2.5
47 | }
48 | ],
49 | "evaluate": [
50 | {
51 | "type": "stop",
52 | "value": "ANS",
53 | "args": ["12"]
54 | }
55 | ],
56 | "ans": "ANS 12"
57 | }
58 |
--------------------------------------------------------------------------------
/tasks/Dual/ChimeraX/C-05.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "ChimeraX",
3 | "sort": "VM",
4 | "steps": 5,
5 | "instruction": "Submit your answer: the number of bonds shown in the base pairs under plain styling.",
6 | "version": "0.1",
7 | "snapshot": "sci_bench",
8 | "initialize": [
9 | {
10 | "func": "execute",
11 | "command": [
12 | "rm",
13 | "/home/user/.local/share/ChimeraX/commands",
14 | "/home/user/.local/share/ChimeraX/file_history",
15 | "/home/user/.local/share/ChimeraX/preregistration"
16 | ]
17 | },
18 | {
19 | "func": "execute",
20 | "command": "rm -f /home/user/.config/ChimeraX/ui-*",
21 | "shell": true
22 | },
23 | {
24 | "func": "launch",
25 | "wait": 7.5,
26 | "command": [
27 | "chimerax",
28 | "--cmd",
29 | "remotecontrol rest start json true port «PORTLIKE»"
30 | ]
31 | },
32 | {
33 | "func": "clear_log"
34 | },
35 | {
36 | "func": "open",
37 | "name": "3bna"
38 | },
39 | {
40 | "func": "turn",
41 | "axis": "y",
42 | "angle": 1
43 | },
44 | {
45 | "func": "destroy",
46 | "wait": 2.5
47 | }
48 | ],
49 | "evaluate": [
50 | {
51 | "type": "stop",
52 | "value": "ANS",
53 | "args": ["30"]
54 | }
55 | ],
56 | "ans": "ANS 30"
57 | }
58 |
--------------------------------------------------------------------------------
/tasks/Dual/ChimeraX/C-06.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "ChimeraX",
3 | "sort": "VM",
4 | "steps": 10,
5 | "instruction": "What is the distance between two atoms named CD? Answer the question by pure value with two decimal places unitted in Å.",
6 | "version": "0.1",
7 | "snapshot": "sci_bench",
8 | "initialize": [
9 | {
10 | "func": "execute",
11 | "command": [
12 | "rm",
13 | "/home/user/.local/share/ChimeraX/commands",
14 | "/home/user/.local/share/ChimeraX/file_history",
15 | "/home/user/.local/share/ChimeraX/preregistration"
16 | ]
17 | },
18 | {
19 | "func": "execute",
20 | "command": "rm -f /home/user/.config/ChimeraX/ui-*",
21 | "shell": true
22 | },
23 | {
24 | "func": "launch",
25 | "wait": 7.5,
26 | "command": [
27 | "chimerax",
28 | "--cmd",
29 | "remotecontrol rest start json true port «PORTLIKE»"
30 | ]
31 | },
32 | {
33 | "func": "clear_log"
34 | },
35 | {
36 | "func": "open",
37 | "name": "2olx"
38 | },
39 | {
40 | "func": "turn",
41 | "axis": "y",
42 | "angle": 1
43 | },
44 | {
45 | "func": "destroy",
46 | "wait": 2.5
47 | }
48 | ],
49 | "evaluate": [
50 | {
51 | "type": "stop",
52 | "value": "ANS",
53 | "args": ["9.39"]
54 | }
55 | ],
56 | "ans": "ANS 9.39"
57 | }
58 |
--------------------------------------------------------------------------------
/tasks/Dual/ChimeraX/C-07.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "ChimeraX",
3 | "sort": "VM",
4 | "steps": 10,
5 | "instruction": "What is the angle between /A GLN4 OE1, OXT and GLN 3 OE1? Answer the question by pure value with two decimal places.",
6 | "version": "0.1",
7 | "snapshot": "sci_bench",
8 | "initialize": [
9 | {
10 | "func": "execute",
11 | "command": [
12 | "rm",
13 | "/home/user/.local/share/ChimeraX/commands",
14 | "/home/user/.local/share/ChimeraX/file_history",
15 | "/home/user/.local/share/ChimeraX/preregistration"
16 | ]
17 | },
18 | {
19 | "func": "execute",
20 | "command": "rm -f /home/user/.config/ChimeraX/ui-*",
21 | "shell": true
22 | },
23 | {
24 | "func": "launch",
25 | "wait": 7.5,
26 | "command": [
27 | "chimerax",
28 | "--cmd",
29 | "remotecontrol rest start json true port «PORTLIKE»"
30 | ]
31 | },
32 | {
33 | "func": "clear_log"
34 | },
35 | {
36 | "func": "open",
37 | "name": "2olx"
38 | },
39 | {
40 | "func": "turn",
41 | "axis": "y",
42 | "angle": 1
43 | },
44 | {
45 | "func": "destroy",
46 | "wait": 2.5
47 | }
48 | ],
49 | "evaluate": [
50 | {
51 | "type": "stop",
52 | "value": "ANS",
53 | "args": ["109.03"]
54 | }
55 | ],
56 | "ans": "ANS 109.03"
57 | }
58 |
--------------------------------------------------------------------------------
/tasks/Raw/Lean/A-01.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "Lean",
3 | "sort": "Raw",
4 | "steps": 50,
5 | "penalty": "1:5",
6 | "instruction": "theorem PT_1 {R : Sort u → Sort u → Prop} (h₁ : ∀ x, ∀ y, R x y → R y x) (h₂ : ∀ x, ∀ y, ∀ z, R x y ∧ R y z → R x z) (h₃ : ∀ x, ∃ y, R x y) : ∀ x, R x x := by sorry",
7 | "version": "0.1",
8 | "initialize": [
9 | {
10 | "func": "import",
11 | "libs": ["Mathlib"]
12 | },
13 | {
14 | "func": "query",
15 | "expr": "theorem PT_1 {R : Sort u → Sort u → Prop} (h₁ : ∀ x, ∀ y, R x y → R y x) (h₂ : ∀ x, ∀ y, ∀ z, R x y ∧ R y z → R x z) (h₃ : ∀ x, ∃ y, R x y) : ∀ x, R x x := by sorry"
16 | }
17 | ],
18 | "evaluate": [
19 | {
20 | "type": "placeholder"
21 | }
22 | ]
23 | }
24 |
--------------------------------------------------------------------------------
/tasks/Raw/Lean/A-02.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "Lean",
3 | "sort": "Raw",
4 | "steps": 50,
5 | "penalty": "1:5",
6 | "instruction": "theorem PT_2 : ack x (y + 1) < ack (x + 1) y := by sorry",
7 | "version": "0.1",
8 | "initialize": [
9 | {
10 | "func": "import",
11 | "libs": ["Mathlib"]
12 | },
13 | {
14 | "func": "query",
15 | "expr": "theorem PT_2 : ack x (y + 1) < ack (x + 1) y := by sorry"
16 | }
17 | ],
18 | "evaluate": [
19 | {
20 | "type": "placeholder"
21 | }
22 | ]
23 | }
24 |
--------------------------------------------------------------------------------
/tasks/Raw/Lean/A-03.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "Lean",
3 | "sort": "Raw",
4 | "steps": 50,
5 | "penalty": "1:5",
6 | "instruction": "theorem ST_1 (X : ZFSet) : ((IsTransitive X) ↔ (X ⊆ powerset X)) ∧ ((IsTransitive X) ↔ ((⋃₀ X : ZFSet) ⊆ X)) := by sorry",
7 | "version": "0.1",
8 | "initialize": [
9 | {
10 | "func": "import",
11 | "libs": ["Mathlib"]
12 | },
13 | {
14 | "func": "open",
15 | "libs": ["ZFSet"]
16 | },
17 | {
18 | "func": "query",
19 | "expr": "theorem ST_1 (X : ZFSet) : ((IsTransitive X) ↔ (X ⊆ powerset X)) ∧ ((IsTransitive X) ↔ ((⋃₀ X : ZFSet) ⊆ X)) := by sorry"
20 | }
21 | ],
22 | "evaluate": [
23 | {
24 | "type": "placeholder"
25 | }
26 | ]
27 | }
28 |
--------------------------------------------------------------------------------
/tasks/Raw/Lean/A-04.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "Lean",
3 | "sort": "Raw",
4 | "steps": 50,
5 | "penalty": "1:5",
6 | "instruction": "theorem ST_2 (α : Ordinal) (h₁ : IsLimit α) (h₂ : α < ω_ 1) : α.cof = ℵ := by sorry",
7 | "version": "0.1",
8 | "initialize": [
9 | {
10 | "func": "import",
11 | "libs": ["Mathlib"]
12 | },
13 | {
14 | "func": "open",
15 | "libs": ["Ordinal", "Cardinal"]
16 | },
17 | {
18 | "func": "query",
19 | "expr": "theorem ST_2 (α : Ordinal) (h₁ : IsLimit α) (h₂ : α < ω_ 1) : α.cof = ℵ := by sorry"
20 | }
21 | ],
22 | "evaluate": [
23 | {
24 | "type": "placeholder"
25 | }
26 | ]
27 | }
28 |
--------------------------------------------------------------------------------
/tasks/Raw/Lean/A-05.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "Lean",
3 | "sort": "Raw",
4 | "steps": 50,
5 | "penalty": "1:5",
6 | "instruction": "theorem ST_3 (h : 𝔠 > ℵ_ (ord ℵ₁)) : (ℷ (ℵ_ ω) = 2 ^ ℵ₀) ∧ (ℷ (ℵ_ <| ω_ 1) = 2 ^ ℵ₁) := by sorry",
7 | "version": "0.1",
8 | "initialize": [
9 | {
10 | "func": "import",
11 | "libs": ["Mathlib"]
12 | },
13 | {
14 | "func": "open",
15 | "libs": ["Ordinal", "Cardinal"]
16 | },
17 | {
18 | "func": "def",
19 | "expr": "def ℷ (κ : Cardinal) : Cardinal := κ ^ cof κ.ord"
20 | },
21 | {
22 | "func": "query",
23 | "expr": "theorem ST_3 (h : 𝔠 > ℵ_ (ord ℵ₁)) : (ℷ (ℵ_ ω) = 2 ^ ℵ₀) ∧ (ℷ (ℵ_ <| ω_ 1) = 2 ^ ℵ₁) := by sorry"
24 | }
25 | ],
26 | "evaluate": [
27 | {
28 | "type": "placeholder"
29 | }
30 | ]
31 | }
32 |
--------------------------------------------------------------------------------
/tasks/Raw/Lean/B-01.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "Lean",
3 | "sort": "Raw",
4 | "steps": 50,
5 | "penalty": "1:5",
6 | "instruction": "theorem DM_1 {a p : ℕ} (h₁ : Nat.Prime p) (h₂ : Odd a) (h₃ : IsCoprime a p) : (a ^ (p - 1) + (p - 1) ^ a) ≡ 0 [ZMOD p] := by sorry",
7 | "version": "0.1",
8 | "initialize": [
9 | {
10 | "func": "import",
11 | "libs": ["Mathlib"]
12 | },
13 | {
14 | "func": "query",
15 | "expr": "theorem DM_1 {a p : ℕ} (h₁ : Nat.Prime p) (h₂ : Odd a) (h₃ : IsCoprime a p) : (a ^ (p - 1) + (p - 1) ^ a) ≡ 0 [ZMOD p] := by sorry"
16 | }
17 | ],
18 | "evaluate": [
19 | {
20 | "type": "placeholder"
21 | }
22 | ]
23 | }
24 |
--------------------------------------------------------------------------------
/tasks/Raw/Lean/B-02.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "Lean",
3 | "sort": "Raw",
4 | "steps": 50,
5 | "penalty": "1:5",
6 | "instruction": "theorem DM_2 {n e : ℕ} {G : SimpleGraph V} [Fintype V] [Fintype G.edgeSet] [DecidableEq V] (h₁ : n = Fintype.card V ∧ e = Fintype.card G.edgeSet) (h₂ : ∀ v₁ : V, ∀ v₂ : V, ∃ w : G.Walk v₁ v₂, w.IsHamiltonian) : n ≥ 4 → 2 * e ≥ 3 * n + 1 := by sorry",
7 | "version": "0.1",
8 | "initialize": [
9 | {
10 | "func": "import",
11 | "libs": ["Mathlib"]
12 | },
13 | {
14 | "func": "query",
15 | "expr": "theorem DM_2 {n e : ℕ} {G : SimpleGraph V} [Fintype V] [Fintype G.edgeSet] [DecidableEq V] (h₁ : n = Fintype.card V ∧ e = Fintype.card G.edgeSet) (h₂ : ∀ v₁ : V, ∀ v₂ : V, ∃ w : G.Walk v₁ v₂, w.IsHamiltonian) : n ≥ 4 → 2 * e ≥ 3 * n + 1 := by sorry"
16 | }
17 | ],
18 | "evaluate": [
19 | {
20 | "type": "placeholder"
21 | }
22 | ]
23 | }
24 |
--------------------------------------------------------------------------------
/tasks/Raw/Lean/B-03.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "Lean",
3 | "sort": "Raw",
4 | "steps": 50,
5 | "penalty": "1:5",
6 | "instruction": "theorem DM_3 {L : Language} [L.Structure M₁] [L.Structure M₂] (h : M₁ ≅[L] M₂) : ∃ N : Bundled L.Structure, Nonempty (M₁ ↪ₑ[L] N) ∧ Nonempty (M₂ ↪ₑ[L] N) := by sorry",
7 | "version": "0.1",
8 | "initialize": [
9 | {
10 | "func": "import",
11 | "libs": ["Mathlib"]
12 | },
13 | {
14 | "func": "open",
15 | "libs": ["CategoryTheory", "FirstOrder"]
16 | },
17 | {
18 | "func": "query",
19 | "expr": "theorem DM_3 {L : Language} [L.Structure M₁] [L.Structure M₂] (h : M₁ ≅[L] M₂) : ∃ N : Bundled L.Structure, Nonempty (M₁ ↪ₑ[L] N) ∧ Nonempty (M₂ ↪ₑ[L] N) := by sorry"
20 | }
21 | ],
22 | "evaluate": [
23 | {
24 | "type": "placeholder"
25 | }
26 | ]
27 | }
28 |
--------------------------------------------------------------------------------
/tasks/Raw/Lean/B-04.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "Lean",
3 | "sort": "Raw",
4 | "steps": 50,
5 | "penalty": "1:5",
6 | "instruction": "theorem DM_4 [Primcodable α] [Primcodable β] [Primcodable γ] [Primcodable δ] {p : α → Prop} {q : β → Prop} {r : γ → Prop} {s : δ → Prop} (h₁ : ManyOneEquiv p r) (h₂ : ManyOneEquiv q s) : ManyOneEquiv (Sum.elim p q) (Sum.elim r s) := by sorry",
7 | "version": "0.1",
8 | "initialize": [
9 | {
10 | "func": "import",
11 | "libs": ["Mathlib"]
12 | },
13 | {
14 | "func": "query",
15 | "expr": "theorem DM_4 [Primcodable α] [Primcodable β] [Primcodable γ] [Primcodable δ] {p : α → Prop} {q : β → Prop} {r : γ → Prop} {s : δ → Prop} (h₁ : ManyOneEquiv p r) (h₂ : ManyOneEquiv q s) : ManyOneEquiv (Sum.elim p q) (Sum.elim r s) := by sorry"
16 | }
17 | ],
18 | "evaluate": [
19 | {
20 | "type": "placeholder"
21 | }
22 | ]
23 | }
24 |
--------------------------------------------------------------------------------
/tasks/Raw/Lean/B-05.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "Lean",
3 | "sort": "Raw",
4 | "steps": 50,
5 | "penalty": "1:5",
6 | "instruction": "theorem AA_1 [Group G] [IsCyclic G] (N : Subgroup G) [Pow (G ⧸ N) ℤ] : IsCyclic (G ⧸ N) := by sorry",
7 | "version": "0.1",
8 | "initialize": [
9 | {
10 | "func": "import",
11 | "libs": ["Mathlib"]
12 | },
13 | {
14 | "func": "query",
15 | "expr": "theorem AA_1 [Group G] [IsCyclic G] (N : Subgroup G) [Pow (G ⧸ N) ℤ] : IsCyclic (G ⧸ N) := by sorry"
16 | }
17 | ],
18 | "evaluate": [
19 | {
20 | "type": "placeholder"
21 | }
22 | ]
23 | }
24 |
--------------------------------------------------------------------------------
/tasks/Raw/Lean/B-06.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "Lean",
3 | "sort": "Raw",
4 | "steps": 50,
5 | "penalty": "1:5",
6 | "instruction": "theorem AA_2 [Ring R] (N : Ideal R) [DivisionRing (R ⧸ N)] (a : R) : (∃ t : N, t = a * a) → (∃ t' : N, t' = a) := by sorry",
7 | "version": "0.1",
8 | "initialize": [
9 | {
10 | "func": "import",
11 | "libs": ["Mathlib"]
12 | },
13 | {
14 | "func": "query",
15 | "expr": "theorem AA_2 [Ring R] (N : Ideal R) [DivisionRing (R ⧸ N)] (a : R) : (∃ t : N, t = a * a) → (∃ t' : N, t' = a) := by sorry"
16 | }
17 | ],
18 | "evaluate": [
19 | {
20 | "type": "placeholder"
21 | }
22 | ]
23 | }
24 |
--------------------------------------------------------------------------------
/tasks/Raw/Lean/B-07.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "Lean",
3 | "sort": "Raw",
4 | "steps": 50,
5 | "penalty": "1:5",
6 | "instruction": "theorem AA_3 {K E F : Set α} [Field K] [Field E] [Field F] [Algebra F E] [Algebra F K] (h₁ : F ⊆ E) (h₂ : E ⊆ K) (h₃ : Normal F K) : Nonempty (Algebra E K) ∧ ([Algebra E K] → (Normal E K)) := by sorry",
7 | "version": "0.1",
8 | "initialize": [
9 | {
10 | "func": "import",
11 | "libs": ["Mathlib"]
12 | },
13 | {
14 | "func": "query",
15 | "expr": "theorem AA_3 {K E F : Set α} [Field K] [Field E] [Field F] [Algebra F E] [Algebra F K] (h₁ : F ⊆ E) (h₂ : E ⊆ K) (h₃ : Normal F K) : Nonempty (Algebra E K) ∧ ([Algebra E K] → (Normal E K)) := by sorry"
16 | }
17 | ],
18 | "evaluate": [
19 | {
20 | "type": "placeholder"
21 | }
22 | ]
23 | }
24 |
--------------------------------------------------------------------------------
/tasks/Raw/Lean/C-01.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "Lean",
3 | "sort": "Raw",
4 | "steps": 50,
5 | "penalty": "1:5",
6 | "instruction": "theorem TP_1 [TopologicalSpace X] [TopologicalSpace Y] (h₁ : X ≃ₜ Y) (h₂ : MetrizableSpace X) : MetrizableSpace Y := by sorry",
7 | "version": "0.1",
8 | "initialize": [
9 | {
10 | "func": "import",
11 | "libs": ["Mathlib"]
12 | },
13 | {
14 | "func": "open",
15 | "libs": ["TopologicalSpace"]
16 | },
17 | {
18 | "func": "query",
19 | "expr": "theorem TP_1 [TopologicalSpace X] [TopologicalSpace Y] (h₁ : X ≃ₜ Y) (h₂ : MetrizableSpace X) : MetrizableSpace Y := by sorry"
20 | }
21 | ],
22 | "evaluate": [
23 | {
24 | "type": "placeholder"
25 | }
26 | ]
27 | }
28 |
--------------------------------------------------------------------------------
/tasks/Raw/Lean/C-02.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "Lean",
3 | "sort": "Raw",
4 | "steps": 50,
5 | "penalty": "1:5",
6 | "instruction": "theorem TP_2 [TopologicalSpace X] (A B : Set X) (h : (derivedSet A) ⊆ B ∧ B ⊆ A) : IsClosed B := by sorry",
7 | "version": "0.1",
8 | "initialize": [
9 | {
10 | "func": "import",
11 | "libs": ["Mathlib"]
12 | },
13 | {
14 | "func": "query",
15 | "expr": "theorem TP_2 [TopologicalSpace X] (A B : Set X) (h : (derivedSet A) ⊆ B ∧ B ⊆ A) : IsClosed B := by sorry"
16 | }
17 | ],
18 | "evaluate": [
19 | {
20 | "type": "placeholder"
21 | }
22 | ]
23 | }
24 |
--------------------------------------------------------------------------------
/tasks/Raw/Lean/C-03.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "Lean",
3 | "sort": "Raw",
4 | "steps": 50,
5 | "penalty": "1:5",
6 | "instruction": "theorem TP_3 [TopologicalSpace X] [TopologicalSpace Y] (f : X → Y) (Z : Set X) (h₁ : Continuous f) (h₂ : IsConnected Z) : IsConnected {y : Y | ∃ z ∈ Z, f z = y} := by sorry",
7 | "version": "0.1",
8 | "initialize": [
9 | {
10 | "func": "import",
11 | "libs": ["Mathlib"]
12 | },
13 | {
14 | "func": "query",
15 | "expr": "theorem TP_3 [TopologicalSpace X] [TopologicalSpace Y] (f : X → Y) (Z : Set X) (h₁ : Continuous f) (h₂ : IsConnected Z) : IsConnected {y : Y | ∃ z ∈ Z, f z = y} := by sorry"
16 | }
17 | ],
18 | "evaluate": [
19 | {
20 | "type": "placeholder"
21 | }
22 | ]
23 | }
24 |
--------------------------------------------------------------------------------
/tasks/Raw/Lean/C-04.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "Lean",
3 | "sort": "Raw",
4 | "steps": 50,
5 | "penalty": "1:5",
6 | "instruction": "theorem TP_4 [𝒯₁ : TopologicalSpace X] [𝒯₂ : TopologicalSpace X] (h : ∀ x : Set X, 𝒯₁.IsOpen x → 𝒯₂.IsOpen x) : (@T0Space X 𝒯₁ → @T0Space X 𝒯₂) ∧ (@T1Space X 𝒯₁ → @T1Space X 𝒯₂) := by sorry",
7 | "version": "0.1",
8 | "initialize": [
9 | {
10 | "func": "import",
11 | "libs": ["Mathlib"]
12 | },
13 | {
14 | "func": "query",
15 | "expr": "theorem TP_4 [𝒯₁ : TopologicalSpace X] [𝒯₂ : TopologicalSpace X] (h : ∀ x : Set X, 𝒯₁.IsOpen x → 𝒯₂.IsOpen x) : (@T0Space X 𝒯₁ → @T0Space X 𝒯₂) ∧ (@T1Space X 𝒯₁ → @T1Space X 𝒯₂) := by sorry"
16 | }
17 | ],
18 | "evaluate": [
19 | {
20 | "type": "placeholder"
21 | }
22 | ]
23 | }
24 |
--------------------------------------------------------------------------------
/tasks/Raw/Lean/C-05.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "Lean",
3 | "sort": "Raw",
4 | "steps": 50,
5 | "penalty": "1:5",
6 | "instruction": "theorem TP_5 [TopologicalSpace X] [RegularSpace X] (A Y : Set X) (h₁ : IsCompact A) (h₂ : A ⊆ Y ∧ Y ⊆ Aᶜ) : IsCompact Y := by sorry",
7 | "version": "0.1",
8 | "initialize": [
9 | {
10 | "func": "import",
11 | "libs": ["Mathlib"]
12 | },
13 | {
14 | "func": "query",
15 | "expr": "theorem TP_5 [TopologicalSpace X] [RegularSpace X] (A Y : Set X) (h₁ : IsCompact A) (h₂ : A ⊆ Y ∧ Y ⊆ Aᶜ) : IsCompact Y := by sorry"
16 | }
17 | ],
18 | "evaluate": [
19 | {
20 | "type": "placeholder"
21 | }
22 | ]
23 | }
24 |
--------------------------------------------------------------------------------
/tasks/Raw/Lean/D-01.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "Lean",
3 | "sort": "Raw",
4 | "steps": 50,
5 | "penalty": "1:5",
6 | "instruction": "theorem AP_1 (A : ℝ) (f : ℝ → ℝ) (h₁ : A > 0) (h₂ : Tendsto f atBot (𝓝 A)) : ∃ X : ℝ, X > 0 ∧ (∀ x < -X, A < 2 * f x ∧ 2 * f x < 3 * A) := by sorry",
7 | "version": "0.1",
8 | "initialize": [
9 | {
10 | "func": "import",
11 | "libs": ["Mathlib"]
12 | },
13 | {
14 | "func": "open",
15 | "libs": ["Filter", "Topology"]
16 | },
17 | {
18 | "func": "query",
19 | "expr": "theorem AP_1 (A : ℝ) (f : ℝ → ℝ) (h₁ : A > 0) (h₂ : Tendsto f atBot (𝓝 A)) : ∃ X : ℝ, X > 0 ∧ (∀ x < -X, A < 2 * f x ∧ 2 * f x < 3 * A) := by sorry"
20 | }
21 | ],
22 | "evaluate": [
23 | {
24 | "type": "placeholder"
25 | }
26 | ]
27 | }
28 |
--------------------------------------------------------------------------------
/tasks/Raw/Lean/D-02.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "Lean",
3 | "sort": "Raw",
4 | "steps": 50,
5 | "penalty": "1:5",
6 | "instruction": "theorem AP_2 (S : Set ℝ) (f f' : ℝ → ℝ) (h₁ : ∀ x ∈ S, HasDerivWithinAt f (f' x) S x) (h₂ : ∃ M : ℝ, ∀ x ∈ S, |f' x| ≤ M) : UniformContinuousOn f S := by sorry",
7 | "version": "0.1",
8 | "initialize": [
9 | {
10 | "func": "import",
11 | "libs": ["Mathlib"]
12 | },
13 | {
14 | "func": "query",
15 | "expr": "theorem AP_2 (S : Set ℝ) (f f' : ℝ → ℝ) (h₁ : ∀ x ∈ S, HasDerivWithinAt f (f' x) S x) (h₂ : ∃ M : ℝ, ∀ x ∈ S, |f' x| ≤ M) : UniformContinuousOn f S := by sorry"
16 | }
17 | ],
18 | "evaluate": [
19 | {
20 | "type": "placeholder"
21 | }
22 | ]
23 | }
24 |
--------------------------------------------------------------------------------
/tasks/Raw/Lean/D-03.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "Lean",
3 | "sort": "Raw",
4 | "steps": 50,
5 | "penalty": "1:5",
6 | "instruction": "theorem AP_3 {a b : ℝ} (f : ℝ → ℝ) (h₁ : ContinuousOn f (Icc a b)) (h₂ : (∫ x in a..b, (f x) ^ 2) = 0) : ∀ x ∈ Icc a b, f x = 0 := by sorry",
7 | "version": "0.1",
8 | "initialize": [
9 | {
10 | "func": "import",
11 | "libs": ["Mathlib"]
12 | },
13 | {
14 | "func": "open",
15 | "libs": ["Set"]
16 | },
17 | {
18 | "func": "query",
19 | "expr": "theorem AP_3 {a b : ℝ} (f : ℝ → ℝ) (h₁ : ContinuousOn f (Icc a b)) (h₂ : (∫ x in a..b, (f x) ^ 2) = 0) : ∀ x ∈ Icc a b, f x = 0 := by sorry"
20 | }
21 | ],
22 | "evaluate": [
23 | {
24 | "type": "placeholder"
25 | }
26 | ]
27 | }
28 |
--------------------------------------------------------------------------------
/tasks/Raw/Lean/D-04.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "Lean",
3 | "sort": "Raw",
4 | "steps": 50,
5 | "penalty": "1:5",
6 | "instruction": "theorem MT_1 (𝒞 : Set (Set Ω)) (h : #𝒞 = ℵ₀) : #(generateSetAlgebra 𝒞) = ℵ₀ := by sorry",
7 | "version": "0.1",
8 | "initialize": [
9 | {
10 | "func": "import",
11 | "libs": ["Mathlib"]
12 | },
13 | {
14 | "func": "open",
15 | "libs": ["Cardinal", "MeasureTheory"]
16 | },
17 | {
18 | "func": "query",
19 | "expr": "theorem MT_1 (𝒞 : Set (Set Ω)) (h : #𝒞 = ℵ₀) : #(generateSetAlgebra 𝒞) = ℵ₀ := by sorry"
20 | }
21 | ],
22 | "evaluate": [
23 | {
24 | "type": "placeholder"
25 | }
26 | ]
27 | }
28 |
--------------------------------------------------------------------------------
/tasks/Raw/Lean/D-05.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "Lean",
3 | "sort": "Raw",
4 | "steps": 50,
5 | "penalty": "1:5",
6 | "instruction": "theorem MT_2 [MeasurableSpace Ω] (μ_ : ℕ → Measure Ω) (f : Set Ω → ℝ≥0∞) (h₁ : ∀ n : ℕ, ∀ A : Set Ω, (μ_ n).measureOf A ≤ (μ_ (n + 1)).measureOf A) (h₂ : ∀ A : Set Ω, Tendsto (fun n => (μ_ n).measureOf A) atTop (𝓝 (f A))) : ∃ μ : Measure Ω, μ.measureOf = f := by sorry",
7 | "version": "0.1",
8 | "initialize": [
9 | {
10 | "func": "import",
11 | "libs": ["Mathlib"]
12 | },
13 | {
14 | "func": "open",
15 | "libs": ["MeasureTheory", "ENNReal", "Filter", "Topology"]
16 | },
17 | {
18 | "func": "query",
19 | "expr": "theorem MT_2 [MeasurableSpace Ω] (μ_ : ℕ → Measure Ω) (f : Set Ω → ℝ≥0∞) (h₁ : ∀ n : ℕ, ∀ A : Set Ω, (μ_ n).measureOf A ≤ (μ_ (n + 1)).measureOf A) (h₂ : ∀ A : Set Ω, Tendsto (fun n => (μ_ n).measureOf A) atTop (𝓝 (f A))) : ∃ μ : Measure Ω, μ.measureOf = f := by sorry"
20 | }
21 | ],
22 | "evaluate": [
23 | {
24 | "type": "placeholder"
25 | }
26 | ]
27 | }
28 |
--------------------------------------------------------------------------------
/tasks/Raw/Lean/D-06.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "Lean",
3 | "sort": "Raw",
4 | "steps": 50,
5 | "penalty": "1:5",
6 | "instruction": "theorem MT_3 {a b : ℝ} {μ : Measure <| Icc a b} (f_ : ℕ → Icc a b → ℝ) (f : Icc a b → ℝ) (g : ℝ → ℝ) (h₁ : TendstoInMeasure μ f_ atTop f) (h₂ : ∃ M : ℝ, ∀ x : Icc a b, |f x| < M) (h₃ : ContinuousOn g univ) : TendstoInMeasure μ (fun n => g ∘ (f_ n)) atTop (g ∘ f) := by sorry",
7 | "version": "0.1",
8 | "initialize": [
9 | {
10 | "func": "import",
11 | "libs": ["Mathlib"]
12 | },
13 | {
14 | "func": "open",
15 | "libs": ["Set", "MeasureTheory", "Filter"]
16 | },
17 | {
18 | "func": "query",
19 | "expr": "theorem MT_3 {a b : ℝ} {μ : Measure <| Icc a b} (f_ : ℕ → Icc a b → ℝ) (f : Icc a b → ℝ) (g : ℝ → ℝ) (h₁ : TendstoInMeasure μ f_ atTop f) (h₂ : ∃ M : ℝ, ∀ x : Icc a b, |f x| < M) (h₃ : ContinuousOn g univ) : TendstoInMeasure μ (fun n => g ∘ (f_ n)) atTop (g ∘ f) := by sorry"
20 | }
21 | ],
22 | "evaluate": [
23 | {
24 | "type": "placeholder"
25 | }
26 | ]
27 | }
28 |
--------------------------------------------------------------------------------
/tasks/Raw/Lean/D-07.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "Lean",
3 | "sort": "Raw",
4 | "steps": 50,
5 | "penalty": "1:5",
6 | "instruction": "theorem MT_4 [MeasureSpace Ω] [IsProbabilityMeasure (ℙ : Measure Ω)] (X : Ω → ℝ) {p : ℕ} {X : Ω → ℝ} (h₁ : p > 0) (h₂ : Integrable X) (h₃ : ∃ M : ℝ, 𝔼[fun ω => |X ω| ^ p] = M) : Tendsto (fun (x : ℝ) => (x ^ p) * (ℙ {ω : Ω | |X ω| > x}).toReal) atTop (𝓝 0) := by sorry",
7 | "version": "0.1",
8 | "initialize": [
9 | {
10 | "func": "import",
11 | "libs": ["Mathlib"]
12 | },
13 | {
14 | "func": "open",
15 | "libs": ["MeasureTheory", "ProbabilityTheory", "Filter", "Topology"]
16 | },
17 | {
18 | "func": "query",
19 | "expr": "theorem MT_4 [MeasureSpace Ω] [IsProbabilityMeasure (ℙ : Measure Ω)] (X : Ω → ℝ) {p : ℕ} {X : Ω → ℝ} (h₁ : p > 0) (h₂ : Integrable X) (h₃ : ∃ M : ℝ, 𝔼[fun ω => |X ω| ^ p] = M) : Tendsto (fun (x : ℝ) => (x ^ p) * (ℙ {ω : Ω | |X ω| > x}).toReal) atTop (𝓝 0) := by sorry"
20 | }
21 | ],
22 | "evaluate": [
23 | {
24 | "type": "placeholder"
25 | }
26 | ]
27 | }
28 |
--------------------------------------------------------------------------------
/tasks/Raw/Lean/E-01.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "Lean",
3 | "sort": "Raw",
4 | "steps": 100,
5 | "penalty": "1:10",
6 | "instruction": "def OP_1 (n : ℤ) : Decidable (∃ a b c d : ℤ, n = a ^ 3 + b ^ 3 + c ^ 3 + d ^ 3) := by sorry",
7 | "version": "0.1",
8 | "initialize": [
9 | {
10 | "func": "import",
11 | "libs": ["Mathlib"]
12 | },
13 | {
14 | "func": "query",
15 | "expr": "def OP_1 (n : ℤ) : Decidable (∃ a b c d : ℤ, n = a ^ 3 + b ^ 3 + c ^ 3 + d ^ 3) := by sorry"
16 | }
17 | ],
18 | "evaluate": [
19 | {
20 | "type": "placeholder"
21 | }
22 | ]
23 | }
24 |
--------------------------------------------------------------------------------
/tasks/Raw/Lean/E-02.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "Lean",
3 | "sort": "Raw",
4 | "steps": 100,
5 | "penalty": "1:10",
6 | "instruction": "def OP_2 (I : Set (Set α)) (h : ideal I) : Decidable (∃ A ⊆ I, (inter_family A) ∧ (∀ B ⊆ I, (inter_family B) → (#B ≤ #A)) ∧ (star A)) := by sorry",
7 | "version": "0.1",
8 | "initialize": [
9 | {
10 | "func": "import",
11 | "libs": ["Mathlib"]
12 | },
13 | {
14 | "func": "open",
15 | "libs": ["Cardinal"]
16 | },
17 | {
18 | "func": "def",
19 | "expr": "def ideal (I : Set (Set α)) : Prop := ∃ F : Filter α, I = {i : Set α | ∃ f ∈ F.sets, i = fᶜ }"
20 | },
21 | {
22 | "func": "def",
23 | "expr": "def inter_family (A : Set (Set α)) : Prop := ∀ X ∈ A, ∀ Y ∈ A, (X ∩ Y) ≠ ∅"
24 | },
25 | {
26 | "func": "def",
27 | "expr": "def star (A : Set (Set α)) : Prop := (⋂ X ∈ A, X) ≠ ∅"
28 | },
29 | {
30 | "func": "query",
31 | "expr": "def OP_2 (I : Set (Set α)) (h : ideal I) : Decidable (∃ A ⊆ I, (inter_family A) ∧ (∀ B ⊆ I, (inter_family B) → (#B ≤ #A)) ∧ (star A)) := by sorry"
32 | }
33 | ],
34 | "evaluate": [
35 | {
36 | "type": "placeholder"
37 | }
38 | ]
39 | }
40 |
--------------------------------------------------------------------------------
/tasks/Raw/requirements.linux.txt:
--------------------------------------------------------------------------------
1 | wmctrl==0.5
2 | pillow==10.1.0
3 |
--------------------------------------------------------------------------------
/tasks/Raw/requirements.win.txt:
--------------------------------------------------------------------------------
1 | pywin32==306
2 |
--------------------------------------------------------------------------------
/tasks/VM/Celestia/A-01.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "Celestia",
3 | "sort": "VM",
4 | "steps": 5,
5 | "instruction": "Set the Julian date to 2400000 in Celestia.",
6 | "version": "0.1",
7 | "snapshot": "sci_bench",
8 | "initialize": [
9 | {
10 | "func": "opt",
11 | "depth": 6
12 | },
13 | {
14 | "func": "launch",
15 | "wait": 10,
16 | "command": "LD_LIBRARY_PATH=/home/user/6.5.0/gcc_64/lib /app/bin/celestia-qt6 «PORTLIKE»",
17 | "shell": true
18 | }
19 | ],
20 | "evaluate": [
21 | {
22 | "type": "info",
23 | "key": "lambda dump: dump['time']['value']",
24 | "value": 2400000,
25 | "pred": "lambda key, value: abs(key - value) < 0.1"
26 | }
27 | ]
28 | }
--------------------------------------------------------------------------------
/tasks/VM/Celestia/A-02.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "Celestia",
3 | "sort": "VM",
4 | "steps": 5,
5 | "instruction": "Adjust the time scale to -20x slower in Celestia.",
6 | "version": "0.1",
7 | "snapshot": "sci_bench",
8 | "initialize": [
9 | {
10 | "func": "opt",
11 | "depth": 6
12 | },
13 | {
14 | "func": "launch",
15 | "wait": 10,
16 | "command": "LD_LIBRARY_PATH=/home/user/6.5.0/gcc_64/lib /app/bin/celestia-qt6 «PORTLIKE»",
17 | "shell": true
18 | }
19 | ],
20 | "evaluate": [
21 | {
22 | "type": "info",
23 | "key": "lambda dump: dump['time']['scale']",
24 | "value": 0.05,
25 | "pred": "lambda key, value: abs(key - value) < 0.001"
26 | }
27 | ]
28 | }
--------------------------------------------------------------------------------
/tasks/VM/Celestia/A-03.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "Celestia",
3 | "sort": "VM",
4 | "steps": 5,
5 | "instruction": "Display both the equatorial coordinate grid and the horizental coordinate grid at the same time in Celestia.",
6 | "version": "0.1",
7 | "snapshot": "sci_bench",
8 | "initialize": [
9 | {
10 | "func": "opt",
11 | "depth": 6
12 | },
13 | {
14 | "func": "launch",
15 | "wait": 10,
16 | "command": "LD_LIBRARY_PATH=/home/user/6.5.0/gcc_64/lib /app/bin/celestia-qt6 «PORTLIKE»",
17 | "shell": true
18 | }
19 | ],
20 | "evaluate": [
21 | {
22 | "type": "info",
23 | "key": "lambda dump: dump['config']['render']['celestialSphere']",
24 | "value": true
25 | },
26 | {
27 | "type": "info",
28 | "key": "lambda dump: dump['config']['render']['horizonGrid']",
29 | "value": true
30 | }
31 | ]
32 | }
--------------------------------------------------------------------------------
/tasks/VM/Celestia/A-04.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "Celestia",
3 | "sort": "VM",
4 | "steps": 5,
5 | "instruction": "Display constellations with their boundries in Celestia.",
6 | "version": "0.1",
7 | "snapshot": "sci_bench",
8 | "initialize": [
9 | {
10 | "func": "opt",
11 | "depth": 6
12 | },
13 | {
14 | "func": "launch",
15 | "wait": 10,
16 | "command": "LD_LIBRARY_PATH=/home/user/6.5.0/gcc_64/lib /app/bin/celestia-qt6 «PORTLIKE»",
17 | "shell": true
18 | }
19 | ],
20 | "evaluate": [
21 | {
22 | "type": "info",
23 | "key": "lambda dump: dump['config']['render']['diagrams']",
24 | "value": true
25 | },
26 | {
27 | "type": "info",
28 | "key": "lambda dump: dump['config']['render']['boundaries']",
29 | "value": true
30 | }
31 | ]
32 | }
--------------------------------------------------------------------------------
/tasks/VM/Celestia/A-05.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "Celestia",
3 | "sort": "VM",
4 | "steps": 5,
5 | "instruction": "Display orbits of dwarf planets but not moons in Celestia.",
6 | "version": "0.1",
7 | "snapshot": "sci_bench",
8 | "initialize": [
9 | {
10 | "func": "opt",
11 | "depth": 6
12 | },
13 | {
14 | "func": "launch",
15 | "wait": 10,
16 | "command": "LD_LIBRARY_PATH=/home/user/6.5.0/gcc_64/lib /app/bin/celestia-qt6 «PORTLIKE»",
17 | "shell": true
18 | }
19 | ],
20 | "evaluate": [
21 | {
22 | "type": "info",
23 | "key": "lambda dump: dump['config']['render']['orbits']",
24 | "value": true
25 | },
26 | {
27 | "type": "info",
28 | "key": "lambda dump: dump['config']['orbit']['dwarfPlanet']",
29 | "value": true
30 | },
31 | {
32 | "type": "info",
33 | "key": "lambda dump: dump['config']['orbit']['moon']",
34 | "value": false
35 | }
36 | ]
37 | }
--------------------------------------------------------------------------------
/tasks/VM/Celestia/A-06.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "Celestia",
3 | "sort": "VM",
4 | "steps": 5,
5 | "instruction": "Set the auto magnitude limit at 45 degrees to 9.0 and show labels for stars and open clusters in Celestia.",
6 | "version": "0.1",
7 | "snapshot": "sci_bench",
8 | "initialize": [
9 | {
10 | "func": "opt",
11 | "depth": 6
12 | },
13 | {
14 | "func": "launch",
15 | "wait": 10,
16 | "command": "LD_LIBRARY_PATH=/home/user/6.5.0/gcc_64/lib /app/bin/celestia-qt6 «PORTLIKE»",
17 | "shell": true
18 | }
19 | ],
20 | "evaluate": [
21 | {
22 | "type": "info",
23 | "key": "lambda dump: dump['config']['autoMagnitude']",
24 | "value": 9.0,
25 | "pred": "lambda key, value: abs(key - value) < 0.01"
26 | },
27 | {
28 | "type": "info",
29 | "key": "lambda dump: dump['config']['label']['star']",
30 | "value": true
31 | },
32 | {
33 | "type": "info",
34 | "key": "lambda dump: dump['config']['label']['openCluster']",
35 | "value": true
36 | }
37 | ]
38 | }
--------------------------------------------------------------------------------
/tasks/VM/Celestia/A-07.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "Celestia",
3 | "sort": "VM",
4 | "steps": 5,
5 | "instruction": "Change star style to 'scaled discs' in Celestia.",
6 | "version": "0.1",
7 | "snapshot": "sci_bench",
8 | "initialize": [
9 | {
10 | "func": "opt",
11 | "depth": 6
12 | },
13 | {
14 | "func": "launch",
15 | "wait": 10,
16 | "command": "LD_LIBRARY_PATH=/home/user/6.5.0/gcc_64/lib /app/bin/celestia-qt6 «PORTLIKE»",
17 | "shell": true
18 | }
19 | ],
20 | "evaluate": [
21 | {
22 | "type": "info",
23 | "key": "lambda dump: dump['config']['starStyle']",
24 | "value": 2
25 | }
26 | ]
27 | }
--------------------------------------------------------------------------------
/tasks/VM/Celestia/A-08.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "Celestia",
3 | "sort": "VM",
4 | "steps": 5,
5 | "instruction": "Change texture resolution to 'high' in Celestia.",
6 | "version": "0.1",
7 | "snapshot": "sci_bench",
8 | "initialize": [
9 | {
10 | "func": "opt",
11 | "depth": 6
12 | },
13 | {
14 | "func": "launch",
15 | "wait": 10,
16 | "command": "LD_LIBRARY_PATH=/home/user/6.5.0/gcc_64/lib /app/bin/celestia-qt6 «PORTLIKE»",
17 | "shell": true
18 | }
19 | ],
20 | "evaluate": [
21 | {
22 | "type": "info",
23 | "key": "lambda dump: dump['config']['resolution']",
24 | "value": 2
25 | }
26 | ]
27 | }
--------------------------------------------------------------------------------
/tasks/VM/Celestia/B-01.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "Celestia",
3 | "sort": "VM",
4 | "steps": 5,
5 | "instruction": "Hide Mercury in Celestia.",
6 | "version": "0.1",
7 | "snapshot": "sci_bench",
8 | "initialize": [
9 | {
10 | "func": "opt",
11 | "depth": 6
12 | },
13 | {
14 | "func": "launch",
15 | "wait": 10,
16 | "command": "LD_LIBRARY_PATH=/home/user/6.5.0/gcc_64/lib /app/bin/celestia-qt6 «PORTLIKE»",
17 | "shell": true
18 | }
19 | ],
20 | "query": [
21 | {
22 | "name": "Mercury",
23 | "type": 2
24 | }
25 | ],
26 | "evaluate": [
27 | {
28 | "type": "info",
29 | "key": "lambda dump: dump['entity']['Mercury']['hidden']",
30 | "value": true
31 | }
32 | ]
33 | }
--------------------------------------------------------------------------------
/tasks/VM/Celestia/B-02.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "Celestia",
3 | "sort": "VM",
4 | "steps": 5,
5 | "instruction": "Go to Neptune in Celestia.",
6 | "version": "0.1",
7 | "snapshot": "sci_bench",
8 | "initialize": [
9 | {
10 | "func": "opt",
11 | "depth": 6
12 | },
13 | {
14 | "func": "launch",
15 | "wait": 10,
16 | "command": "LD_LIBRARY_PATH=/home/user/6.5.0/gcc_64/lib /app/bin/celestia-qt6 «PORTLIKE»",
17 | "shell": true
18 | }
19 | ],
20 | "query": [
21 | {
22 | "name": "Neptune",
23 | "type": 2
24 | }
25 | ],
26 | "evaluate": [
27 | {
28 | "type": "info",
29 | "key": "lambda dump: dump['entity']['Neptune']['distance']",
30 | "value": 0,
31 | "pred": "lambda key, value: abs(key - value) < 150000"
32 | }
33 | ]
34 | }
--------------------------------------------------------------------------------
/tasks/VM/Celestia/B-03.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "Celestia",
3 | "sort": "VM",
4 | "steps": 5,
5 | "instruction": "Go to Apollo 9 in Celestia.",
6 | "version": "0.1",
7 | "snapshot": "sci_bench",
8 | "initialize": [
9 | {
10 | "func": "opt",
11 | "depth": 6
12 | },
13 | {
14 | "func": "launch",
15 | "wait": 10,
16 | "command": "LD_LIBRARY_PATH=/home/user/6.5.0/gcc_64/lib /app/bin/celestia-qt6 «PORTLIKE»",
17 | "shell": true
18 | }
19 | ],
20 | "evaluate": [
21 | {
22 | "type": "stop",
23 | "value": "FAIL"
24 | }
25 | ]
26 | }
--------------------------------------------------------------------------------
/tasks/VM/Celestia/B-04.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "Celestia",
3 | "sort": "VM",
4 | "steps": 10,
5 | "instruction": "Go to Orcus and display its velocity vector and planetographic grid in Celestia.",
6 | "version": "0.1",
7 | "snapshot": "sci_bench",
8 | "initialize": [
9 | {
10 | "func": "opt",
11 | "depth": 6
12 | },
13 | {
14 | "func": "launch",
15 | "wait": 10,
16 | "command": "LD_LIBRARY_PATH=/home/user/6.5.0/gcc_64/lib /app/bin/celestia-qt6 «PORTLIKE»",
17 | "shell": true
18 | }
19 | ],
20 | "query": [
21 | {
22 | "name": "Orcus",
23 | "type": 2
24 | }
25 | ],
26 | "evaluate": [
27 | {
28 | "type": "info",
29 | "key": "lambda dump: dump['entity']['Orcus']['distance']",
30 | "value": 0,
31 | "pred": "lambda key, value: abs(key - value) < 3000"
32 | },
33 | {
34 | "type": "info",
35 | "key": "lambda dump: dump['entity']['Orcus']['mark']['velocityVector']",
36 | "value": true
37 | },
38 | {
39 | "type": "info",
40 | "key": "lambda dump: dump['entity']['Orcus']['mark']['planetographicGrid']",
41 | "value": true
42 | }
43 | ]
44 | }
--------------------------------------------------------------------------------
/tasks/VM/Celestia/B-05.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "Celestia",
3 | "sort": "VM",
4 | "steps": 10,
5 | "instruction": "Go to the moon of Eris and display its frame axes and direction vector to sun in Celestia.",
6 | "version": "0.1",
7 | "snapshot": "sci_bench",
8 | "initialize": [
9 | {
10 | "func": "opt",
11 | "depth": 6
12 | },
13 | {
14 | "func": "launch",
15 | "wait": 10,
16 | "command": "LD_LIBRARY_PATH=/home/user/6.5.0/gcc_64/lib /app/bin/celestia-qt6 «PORTLIKE»",
17 | "shell": true
18 | }
19 | ],
20 | "query": [
21 | {
22 | "name": "Dysnomia",
23 | "type": 2
24 | }
25 | ],
26 | "evaluate": [
27 | {
28 | "type": "info",
29 | "key": "lambda dump: dump['entity']['Dysnomia']['distance']",
30 | "value": 0,
31 | "pred": "lambda key, value: abs(key - value) < 3000"
32 | },
33 | {
34 | "type": "info",
35 | "key": "lambda dump: dump['entity']['Dysnomia']['mark']['frameAxes']",
36 | "value": true
37 | },
38 | {
39 | "type": "info",
40 | "key": "lambda dump: dump['entity']['Dysnomia']['mark']['sunDirection']",
41 | "value": true
42 | }
43 | ]
44 | }
--------------------------------------------------------------------------------
/tasks/VM/Celestia/B-06.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "Celestia",
3 | "sort": "VM",
4 | "steps": 10,
5 | "instruction": "Go to the brightest star in absolute magnitude within 20ly of Earth in Celestia.",
6 | "version": "0.1",
7 | "snapshot": "sci_bench",
8 | "initialize": [
9 | {
10 | "func": "opt",
11 | "depth": 6
12 | },
13 | {
14 | "func": "launch",
15 | "wait": 10,
16 | "command": "LD_LIBRARY_PATH=/home/user/6.5.0/gcc_64/lib /app/bin/celestia-qt6 «PORTLIKE»",
17 | "shell": true
18 | }
19 | ],
20 | "query": [
21 | {
22 | "name": "Sirius A",
23 | "type": 1
24 | }
25 | ],
26 | "evaluate": [
27 | {
28 | "type": "info",
29 | "key": "lambda dump: dump['entity']['Sirius A']['distance']",
30 | "value": 0,
31 | "pred": "lambda key, value: abs(key - value) < 170000000"
32 | }
33 | ],
34 | "ans": "Sirius A"
35 | }
--------------------------------------------------------------------------------
/tasks/VM/Celestia/B-07.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "Celestia",
3 | "sort": "VM",
4 | "steps": 10,
5 | "instruction": "Go to the Andromeda Galaxy with time scale set to 6.25x faster in Celestia.",
6 | "version": "0.1",
7 | "snapshot": "sci_bench",
8 | "initialize": [
9 | {
10 | "func": "opt",
11 | "depth": 6
12 | },
13 | {
14 | "func": "launch",
15 | "wait": 10,
16 | "command": "LD_LIBRARY_PATH=/home/user/6.5.0/gcc_64/lib /app/bin/celestia-qt6 «PORTLIKE»",
17 | "shell": true
18 | }
19 | ],
20 | "query": [
21 | {
22 | "name": "Andromeda Galaxy",
23 | "type": 3
24 | }
25 | ],
26 | "evaluate": [
27 | {
28 | "type": "info",
29 | "key": "lambda dump: dump['entity']['Andromeda Galaxy']['distance']",
30 | "value": 0,
31 | "pred": "lambda key, value: abs(key - value) < 3600000000000000000"
32 | },
33 | {
34 | "type": "info",
35 | "key": "lambda dump: dump['time']['scale']",
36 | "value": 6.25,
37 | "pred": "lambda key, value: abs(key - value) < 0.001"
38 | }
39 | ]
40 | }
--------------------------------------------------------------------------------
/tasks/VM/Celestia/B-08.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "Celestia",
3 | "sort": "VM",
4 | "steps": 10,
5 | "instruction": "Approach Callisto and observe Jupiter in Celestia.",
6 | "version": "0.1",
7 | "snapshot": "sci_bench",
8 | "initialize": [
9 | {
10 | "func": "opt",
11 | "depth": 6
12 | },
13 | {
14 | "func": "launch",
15 | "wait": 10,
16 | "command": "LD_LIBRARY_PATH=/home/user/6.5.0/gcc_64/lib /app/bin/celestia-qt6 «PORTLIKE»",
17 | "shell": true
18 | }
19 | ],
20 | "query": [
21 | {
22 | "name": "Jupiter",
23 | "type": 2
24 | },
25 | {
26 | "name": "Callisto",
27 | "type": 2
28 | }
29 | ],
30 | "evaluate": [
31 | {
32 | "type": "info",
33 | "key": "lambda dump: dump['entity']['Jupiter']['visible']",
34 | "value": true
35 | },
36 | {
37 | "type": "info",
38 | "key": "lambda dump: dump['entity']['Callisto']['distance']",
39 | "value": 0,
40 | "pred": "lambda key, value: abs(key - value) < 15000"
41 | }
42 | ]
43 | }
--------------------------------------------------------------------------------
/tasks/VM/Celestia/B-09.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "Celestia",
3 | "sort": "VM",
4 | "steps": 10,
5 | "instruction": "Approach Pluto and observe sol with time stopped in Celestia.",
6 | "version": "0.1",
7 | "snapshot": "sci_bench",
8 | "initialize": [
9 | {
10 | "func": "opt",
11 | "depth": 6
12 | },
13 | {
14 | "func": "launch",
15 | "wait": 10,
16 | "command": "LD_LIBRARY_PATH=/home/user/6.5.0/gcc_64/lib /app/bin/celestia-qt6 «PORTLIKE»",
17 | "shell": true
18 | }
19 | ],
20 | "query": [
21 | {
22 | "name": "Sol",
23 | "type": 1
24 | },
25 | {
26 | "name": "Pluto",
27 | "type": 2
28 | }
29 | ],
30 | "evaluate": [
31 | {
32 | "type": "info",
33 | "key": "lambda dump: dump['entity']['Sol']['visible']",
34 | "value": true
35 | },
36 | {
37 | "type": "info",
38 | "key": "lambda dump: dump['entity']['Pluto']['distance']",
39 | "value": 0,
40 | "pred": "lambda key, value: abs(key - value) < 7000"
41 | },
42 | {
43 | "type": "info",
44 | "key": "lambda dump: dump['time']['pause']",
45 | "value": true
46 | }
47 | ]
48 | }
--------------------------------------------------------------------------------
/tasks/VM/Celestia/B-10.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "Celestia",
3 | "sort": "VM",
4 | "steps": 10,
5 | "instruction": "Completely display the Earth-Moon system and show both ecliptic lines and the ecliptic coordinate grid in Celestia.",
6 | "version": "0.1",
7 | "snapshot": "sci_bench",
8 | "initialize": [
9 | {
10 | "func": "opt",
11 | "depth": 6
12 | },
13 | {
14 | "func": "launch",
15 | "wait": 10,
16 | "command": "LD_LIBRARY_PATH=/home/user/6.5.0/gcc_64/lib /app/bin/celestia-qt6 «PORTLIKE»",
17 | "shell": true
18 | }
19 | ],
20 | "query": [
21 | {
22 | "name": "Earth",
23 | "type": 2
24 | },
25 | {
26 | "name": "Moon",
27 | "type": 2
28 | }
29 | ],
30 | "evaluate": [
31 | {
32 | "type": "info",
33 | "key": "lambda dump: dump['entity']['Earth']['visible']",
34 | "value": true
35 | },
36 | {
37 | "type": "info",
38 | "key": "lambda dump: dump['entity']['Moon']['visible']",
39 | "value": true
40 | },
41 | {
42 | "type": "info",
43 | "key": "lambda dump: dump['config']['render']['ecliptic']",
44 | "value": true
45 | },
46 | {
47 | "type": "info",
48 | "key": "lambda dump: dump['config']['render']['eclipticGrid']",
49 | "value": true
50 | }
51 | ]
52 | }
--------------------------------------------------------------------------------
/tasks/VM/Celestia/C-01.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "Celestia",
3 | "sort": "VM",
4 | "steps": 5,
5 | "instruction": "How many moons does Uranus have? Submit your answer without including minor moons.",
6 | "version": "0.1",
7 | "snapshot": "sci_bench",
8 | "initialize": [
9 | {
10 | "func": "opt",
11 | "depth": 6
12 | },
13 | {
14 | "func": "launch",
15 | "wait": 10,
16 | "command": "LD_LIBRARY_PATH=/home/user/6.5.0/gcc_64/lib /app/bin/celestia-qt6 «PORTLIKE»",
17 | "shell": true
18 | }
19 | ],
20 | "evaluate": [
21 | {
22 | "type": "stop",
23 | "value": "ANS",
24 | "args": ["5"]
25 | }
26 | ],
27 | "ans": "ANS 5"
28 | }
--------------------------------------------------------------------------------
/tasks/VM/Celestia/C-02.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "Celestia",
3 | "sort": "VM",
4 | "steps": 5,
5 | "instruction": "What is the sidereal rotation period of Hydra in hours? Submit your answer with two decimal places.",
6 | "version": "0.1",
7 | "snapshot": "sci_bench",
8 | "initialize": [
9 | {
10 | "func": "opt",
11 | "depth": 6
12 | },
13 | {
14 | "func": "launch",
15 | "wait": 10,
16 | "command": "LD_LIBRARY_PATH=/home/user/6.5.0/gcc_64/lib /app/bin/celestia-qt6 «PORTLIKE»",
17 | "shell": true
18 | }
19 | ],
20 | "evaluate": [
21 | {
22 | "type": "stop",
23 | "value": "ANS",
24 | "args": ["10.31"]
25 | }
26 | ],
27 | "ans": "ANS 10.31"
28 | }
--------------------------------------------------------------------------------
/tasks/VM/Celestia/C-03.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "Celestia",
3 | "sort": "VM",
4 | "steps": 5,
5 | "instruction": "Submit your answer: COSPAR ID for Gemini 9A.",
6 | "version": "0.1",
7 | "snapshot": "sci_bench",
8 | "initialize": [
9 | {
10 | "func": "opt",
11 | "depth": 6
12 | },
13 | {
14 | "func": "launch",
15 | "wait": 10,
16 | "command": "LD_LIBRARY_PATH=/home/user/6.5.0/gcc_64/lib /app/bin/celestia-qt6 «PORTLIKE»",
17 | "shell": true
18 | }
19 | ],
20 | "evaluate": [
21 | {
22 | "type": "stop",
23 | "value": "ANS",
24 | "args": ["1966-047A"]
25 | }
26 | ],
27 | "ans": "ANS 1966-047A"
28 | }
--------------------------------------------------------------------------------
/tasks/VM/Celestia/C-04.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "Celestia",
3 | "sort": "VM",
4 | "steps": 5,
5 | "instruction": "What is the radius of UVCet? Answer the question unitted in RSun.",
6 | "version": "0.1",
7 | "snapshot": "sci_bench",
8 | "initialize": [
9 | {
10 | "func": "opt",
11 | "depth": 6
12 | },
13 | {
14 | "func": "launch",
15 | "wait": 10,
16 | "command": "LD_LIBRARY_PATH=/home/user/6.5.0/gcc_64/lib /app/bin/celestia-qt6 «PORTLIKE»",
17 | "shell": true
18 | }
19 | ],
20 | "evaluate": [
21 | {
22 | "type": "stop",
23 | "value": "ANS",
24 | "args": ["0.16"]
25 | }
26 | ],
27 | "ans": "ANS 0.16"
28 | }
--------------------------------------------------------------------------------
/tasks/VM/Celestia/C-05.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "Celestia",
3 | "sort": "VM",
4 | "steps": 5,
5 | "instruction": "Answer the question: the surface temperature in K of the star closest to Sol.",
6 | "version": "0.1",
7 | "snapshot": "sci_bench",
8 | "initialize": [
9 | {
10 | "func": "opt",
11 | "depth": 6
12 | },
13 | {
14 | "func": "launch",
15 | "wait": 10,
16 | "command": "LD_LIBRARY_PATH=/home/user/6.5.0/gcc_64/lib /app/bin/celestia-qt6 «PORTLIKE»",
17 | "shell": true
18 | }
19 | ],
20 | "evaluate": [
21 | {
22 | "type": "stop",
23 | "value": "ANS",
24 | "args": ["3060"]
25 | }
26 | ],
27 | "ans": "ANS 3060"
28 | }
--------------------------------------------------------------------------------
/tasks/VM/Celestia/C-06.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "Celestia",
3 | "sort": "VM",
4 | "steps": 5,
5 | "instruction": "Answer the question: what is the name of the only star typed in G0?",
6 | "version": "0.1",
7 | "snapshot": "sci_bench",
8 | "initialize": [
9 | {
10 | "func": "opt",
11 | "depth": 6
12 | },
13 | {
14 | "func": "launch",
15 | "wait": 10,
16 | "command": "LD_LIBRARY_PATH=/home/user/6.5.0/gcc_64/lib /app/bin/celestia-qt6 «PORTLIKE»",
17 | "shell": true
18 | }
19 | ],
20 | "evaluate": [
21 | {
22 | "type": "stop",
23 | "value": "ANS",
24 | "args": ["TYC", "2082-2143-1"]
25 | }
26 | ],
27 | "ans": "ANS TYC 2082-2143-1"
28 | }
--------------------------------------------------------------------------------
/tasks/VM/Celestia/C-07.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "Celestia",
3 | "sort": "VM",
4 | "steps": 5,
5 | "instruction": "Submit your answer: hubble type of NGC 185.",
6 | "version": "0.1",
7 | "snapshot": "sci_bench",
8 | "initialize": [
9 | {
10 | "func": "opt",
11 | "depth": 6
12 | },
13 | {
14 | "func": "launch",
15 | "wait": 10,
16 | "command": "LD_LIBRARY_PATH=/home/user/6.5.0/gcc_64/lib /app/bin/celestia-qt6 «PORTLIKE»",
17 | "shell": true
18 | }
19 | ],
20 | "evaluate": [
21 | {
22 | "type": "stop",
23 | "value": "ANS",
24 | "args": ["E3"]
25 | }
26 | ],
27 | "ans": "ANS E3"
28 | }
--------------------------------------------------------------------------------
/tasks/VM/Celestia/C-08.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "Celestia",
3 | "sort": "VM",
4 | "steps": 5,
5 | "instruction": "Answer the question: how many open clusters are recorded in Celestial browser?",
6 | "version": "0.1",
7 | "snapshot": "sci_bench",
8 | "initialize": [
9 | {
10 | "func": "opt",
11 | "depth": 6
12 | },
13 | {
14 | "func": "launch",
15 | "wait": 10,
16 | "command": "LD_LIBRARY_PATH=/home/user/6.5.0/gcc_64/lib /app/bin/celestia-qt6 «PORTLIKE»",
17 | "shell": true
18 | }
19 | ],
20 | "evaluate": [
21 | {
22 | "type": "stop",
23 | "value": "ANS",
24 | "args": ["16176"]
25 | }
26 | ],
27 | "ans": "ANS 16176"
28 | }
--------------------------------------------------------------------------------
/tasks/VM/Celestia/C-09.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "Celestia",
3 | "sort": "VM",
4 | "steps": 5,
5 | "instruction": "What is the apparent magnitude of the galaxy closest to the milky way? Submit your answer with two decimal places.",
6 | "version": "0.1",
7 | "snapshot": "sci_bench",
8 | "initialize": [
9 | {
10 | "func": "opt",
11 | "depth": 6
12 | },
13 | {
14 | "func": "launch",
15 | "wait": 10,
16 | "command": "LD_LIBRARY_PATH=/home/user/6.5.0/gcc_64/lib /app/bin/celestia-qt6 «PORTLIKE»",
17 | "shell": true
18 | }
19 | ],
20 | "evaluate": [
21 | {
22 | "type": "stop",
23 | "value": "ANS",
24 | "args": ["4.47"]
25 | }
26 | ],
27 | "ans": "ANS 4.47"
28 | }
--------------------------------------------------------------------------------
/tasks/VM/Celestia/C-10.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "Celestia",
3 | "sort": "VM",
4 | "steps": 10,
5 | "instruction": "What is the radius of the farthest globular on the list from the milky way in lightyears? Submit your answer with two decimal places.",
6 | "version": "0.1",
7 | "snapshot": "sci_bench",
8 | "initialize": [
9 | {
10 | "func": "opt",
11 | "depth": 6
12 | },
13 | {
14 | "func": "launch",
15 | "wait": 10,
16 | "command": "LD_LIBRARY_PATH=/home/user/6.5.0/gcc_64/lib /app/bin/celestia-qt6 «PORTLIKE»",
17 | "shell": true
18 | }
19 | ],
20 | "evaluate": [
21 | {
22 | "type": "stop",
23 | "value": "ANS",
24 | "args": ["801.63"]
25 | }
26 | ],
27 | "ans": "ANS 801.63"
28 | }
--------------------------------------------------------------------------------
/tasks/VM/Celestia/D-01.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "Celestia",
3 | "sort": "VM",
4 | "steps": 10,
5 | "instruction": "Go to the moon that caused the first solar eclipse in 2095 of Saturn in Celestia.",
6 | "version": "0.1",
7 | "snapshot": "sci_bench",
8 | "initialize": [
9 | {
10 | "func": "opt",
11 | "depth": 6
12 | },
13 | {
14 | "func": "launch",
15 | "wait": 10,
16 | "command": "LD_LIBRARY_PATH=/home/user/6.5.0/gcc_64/lib /app/bin/celestia-qt6 «PORTLIKE»",
17 | "shell": true
18 | }
19 | ],
20 | "query": [
21 | {
22 | "name": "Iapetus",
23 | "type": 2
24 | }
25 | ],
26 | "evaluate": [
27 | {
28 | "type": "info",
29 | "key": "lambda dump: dump['entity']['Iapetus']['distance']",
30 | "value": 0,
31 | "pred": "lambda key, value: abs(key - value) < 4500"
32 | }
33 | ]
34 | }
--------------------------------------------------------------------------------
/tasks/VM/Celestia/D-02.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "Celestia",
3 | "sort": "VM",
4 | "steps": 15,
5 | "instruction": "Answer the question: on which day of December will the last lunar eclipse occur on Earth in 2056?",
6 | "version": "0.1",
7 | "snapshot": "sci_bench",
8 | "initialize": [
9 | {
10 | "func": "opt",
11 | "depth": 6
12 | },
13 | {
14 | "func": "launch",
15 | "wait": 10,
16 | "command": "LD_LIBRARY_PATH=/home/user/6.5.0/gcc_64/lib /app/bin/celestia-qt6 «PORTLIKE»",
17 | "shell": true
18 | }
19 | ],
20 | "evaluate": [
21 | {
22 | "type": "stop",
23 | "value": "ANS",
24 | "args": ["21"]
25 | }
26 | ],
27 | "ans": "ANS 21"
28 | }
--------------------------------------------------------------------------------
/tasks/VM/Celestia/D-03.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "Celestia",
3 | "sort": "VM",
4 | "steps": 15,
5 | "instruction": "What is the difference value in viewing angle between the Sun and the Earth when viewed from Mars on May 28, 2150? Submit your answer with one decimal place.",
6 | "version": "0.1",
7 | "snapshot": "sci_bench",
8 | "initialize": [
9 | {
10 | "func": "opt",
11 | "depth": 6
12 | },
13 | {
14 | "func": "launch",
15 | "wait": 10,
16 | "command": "LD_LIBRARY_PATH=/home/user/6.5.0/gcc_64/lib /app/bin/celestia-qt6 «PORTLIKE»",
17 | "shell": true
18 | }
19 | ],
20 | "evaluate": [
21 | {
22 | "type": "stop",
23 | "value": "ANS",
24 | "args": ["30.5"]
25 | }
26 | ],
27 | "ans": "ANS 30.5"
28 | }
--------------------------------------------------------------------------------
/tasks/VM/ChimeraX/A-01.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "ChimeraX",
3 | "sort": "VM",
4 | "steps": 5,
5 | "instruction": "Fetch 2OLX from PDB in ChimeraX.",
6 | "version": "0.1",
7 | "snapshot": "sci_bench",
8 | "initialize": [
9 | {
10 | "func": "execute",
11 | "command": [
12 | "rm",
13 | "/home/user/.local/share/ChimeraX/commands",
14 | "/home/user/.local/share/ChimeraX/file_history",
15 | "/home/user/.local/share/ChimeraX/preregistration"
16 | ]
17 | },
18 | {
19 | "func": "execute",
20 | "command": "rm -f /home/user/.config/ChimeraX/ui-*",
21 | "shell": true
22 | },
23 | {
24 | "func": "launch",
25 | "wait": 7.5,
26 | "command": [
27 | "chimerax",
28 | "--cmd",
29 | "remotecontrol rest start json true port «PORTLIKE»"
30 | ]
31 | },
32 | {
33 | "func": "clear_log"
34 | }
35 | ],
36 | "evaluate": [
37 | {
38 | "type": "states",
39 | "key": "_state_containers.models._models.(1,)._name",
40 | "value": "2olx"
41 | }
42 | ]
43 | }
44 |
--------------------------------------------------------------------------------
/tasks/VM/ChimeraX/A-02.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "ChimeraX",
3 | "sort": "VM",
4 | "steps": 5,
5 | "instruction": "Load ~/Downloads/prot.cif in ChimeraX.",
6 | "version": "0.1",
7 | "snapshot": "sci_bench",
8 | "initialize": [
9 | {
10 | "func": "execute",
11 | "command": [
12 | "rm",
13 | "/home/user/.local/share/ChimeraX/commands",
14 | "/home/user/.local/share/ChimeraX/file_history",
15 | "/home/user/.local/share/ChimeraX/preregistration"
16 | ]
17 | },
18 | {
19 | "func": "execute",
20 | "command": "rm -f /home/user/.config/ChimeraX/ui-*",
21 | "shell": true
22 | },
23 | {
24 | "func": "launch",
25 | "wait": 7.5,
26 | "command": [
27 | "chimerax",
28 | "--cmd",
29 | "remotecontrol rest start json true port «PORTLIKE»"
30 | ]
31 | },
32 | {
33 | "func": "clear_log"
34 | },
35 | {
36 | "func": "download",
37 | "url": "https://files.rcsb.org/download/3ppd.cif",
38 | "path": "/home/user/Downloads/prot.cif"
39 | }
40 | ],
41 | "evaluate": [
42 | {
43 | "type": "states",
44 | "key": "_state_containers.models._models.(1,)._name",
45 | "value": "prot.cif"
46 | }
47 | ]
48 | }
49 |
--------------------------------------------------------------------------------
/tasks/VM/ChimeraX/A-03.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "ChimeraX",
3 | "sort": "VM",
4 | "steps": 5,
5 | "instruction": "Change the display of the model to ball and stick style in ChimeraX.",
6 | "version": "0.1",
7 | "snapshot": "sci_bench",
8 | "initialize": [
9 | {
10 | "func": "execute",
11 | "command": [
12 | "rm",
13 | "/home/user/.local/share/ChimeraX/commands",
14 | "/home/user/.local/share/ChimeraX/file_history",
15 | "/home/user/.local/share/ChimeraX/preregistration"
16 | ]
17 | },
18 | {
19 | "func": "execute",
20 | "command": "rm -f /home/user/.config/ChimeraX/ui-*",
21 | "shell": true
22 | },
23 | {
24 | "func": "launch",
25 | "wait": 7.5,
26 | "command": [
27 | "chimerax",
28 | "--cmd",
29 | "remotecontrol rest start json true port «PORTLIKE»"
30 | ]
31 | },
32 | {
33 | "func": "clear_log"
34 | },
35 | {
36 | "func": "open",
37 | "name": "3ppd"
38 | },
39 | {
40 | "func": "turn",
41 | "axis": "y",
42 | "angle": 1
43 | }
44 | ],
45 | "evaluate": [
46 | {
47 | "type": "states",
48 | "key": "_state_containers.models._models.(1,)._redraw_needed.cached_drawing_bounds.xyz_min",
49 | "value": "[ -0.30499998 -5.4719996 -11.4869995 ]"
50 | }
51 | ]
52 | }
53 |
--------------------------------------------------------------------------------
/tasks/VM/ChimeraX/A-07.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "ChimeraX",
3 | "sort": "VM",
4 | "steps": 5,
5 | "instruction": "Change the background to grey color in ChimeraX.",
6 | "version": "0.1",
7 | "snapshot": "sci_bench",
8 | "initialize": [
9 | {
10 | "func": "execute",
11 | "command": [
12 | "rm",
13 | "/home/user/.local/share/ChimeraX/commands",
14 | "/home/user/.local/share/ChimeraX/file_history",
15 | "/home/user/.local/share/ChimeraX/preregistration"
16 | ]
17 | },
18 | {
19 | "func": "execute",
20 | "command": "rm -f /home/user/.config/ChimeraX/ui-*",
21 | "shell": true
22 | },
23 | {
24 | "func": "launch",
25 | "wait": 7.5,
26 | "command": [
27 | "chimerax",
28 | "--cmd",
29 | "remotecontrol rest start json true port «PORTLIKE»"
30 | ]
31 | },
32 | {
33 | "func": "clear_log"
34 | },
35 | {
36 | "func": "open",
37 | "name": "1dns"
38 | },
39 | {
40 | "func": "turn",
41 | "axis": "y",
42 | "angle": 1
43 | }
44 | ],
45 | "evaluate": [
46 | {
47 | "type": "states",
48 | "key": "_state_containers.models._models.(1,)._atoms_drawing._draw_shape.bindings._opengl_context.window.view._background_rgba",
49 | "value": "[0.5019608 0.5019608 0.5019608 0. ]"
50 | }
51 | ]
52 | }
53 |
--------------------------------------------------------------------------------
/tasks/VM/ChimeraX/A-11.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "ChimeraX",
3 | "sort": "VM",
4 | "steps": 5,
5 | "instruction": "Show nucleotides as ladders of H-bond in ChimeraX.",
6 | "version": "0.1",
7 | "snapshot": "sci_bench",
8 | "initialize": [
9 | {
10 | "func": "execute",
11 | "command": [
12 | "rm",
13 | "/home/user/.local/share/ChimeraX/commands",
14 | "/home/user/.local/share/ChimeraX/file_history",
15 | "/home/user/.local/share/ChimeraX/preregistration"
16 | ]
17 | },
18 | {
19 | "func": "execute",
20 | "command": "rm -f /home/user/.config/ChimeraX/ui-*",
21 | "shell": true
22 | },
23 | {
24 | "func": "launch",
25 | "wait": 7.5,
26 | "command": [
27 | "chimerax",
28 | "--cmd",
29 | "remotecontrol rest start json true port «PORTLIKE»"
30 | ]
31 | },
32 | {
33 | "func": "clear_log"
34 | },
35 | {
36 | "func": "open",
37 | "name": "3bna"
38 | },
39 | {
40 | "func": "turn",
41 | "axis": "y",
42 | "angle": 1
43 | }
44 | ],
45 | "evaluate": [
46 | {
47 | "type": "states",
48 | "key": "_state_containers.models._models.(1,)._ladder_params.stubs_only",
49 | "value": false
50 | }
51 | ]
52 | }
53 |
--------------------------------------------------------------------------------
/tasks/VM/ChimeraX/B-07.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "ChimeraX",
3 | "sort": "VM",
4 | "steps": 10,
5 | "instruction": "Add hydrogens with method of 'steric only' in ChimeraX.",
6 | "version": "0.1",
7 | "snapshot": "sci_bench",
8 | "initialize": [
9 | {
10 | "func": "execute",
11 | "command": [
12 | "rm",
13 | "/home/user/.local/share/ChimeraX/commands",
14 | "/home/user/.local/share/ChimeraX/file_history",
15 | "/home/user/.local/share/ChimeraX/preregistration"
16 | ]
17 | },
18 | {
19 | "func": "execute",
20 | "command": "rm -f /home/user/.config/ChimeraX/ui-*",
21 | "shell": true
22 | },
23 | {
24 | "func": "launch",
25 | "wait": 7.5,
26 | "command": [
27 | "chimerax",
28 | "--cmd",
29 | "remotecontrol rest start json true port «PORTLIKE»"
30 | ]
31 | },
32 | {
33 | "func": "clear_log"
34 | },
35 | {
36 | "func": "open",
37 | "name": "4r0u"
38 | },
39 | {
40 | "func": "turn",
41 | "axis": "y",
42 | "angle": 1
43 | }
44 | ],
45 | "evaluate": [
46 | {
47 | "type": "states",
48 | "find": "lambda key, value: key.endswith('page_source')",
49 | "key": "lambda key: key",
50 | "pattern": "termini:
61 hydrogens added"
51 | }
52 | ]
53 | }
54 |
--------------------------------------------------------------------------------
/tasks/VM/ChimeraX/B-08.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "ChimeraX",
3 | "sort": "VM",
4 | "steps": 5,
5 | "instruction": "Define the axes by water molecules of /A HOH 107 and /A HOH 108 in ChimeraX.",
6 | "version": "0.1",
7 | "snapshot": "sci_bench",
8 | "initialize": [
9 | {
10 | "func": "execute",
11 | "command": [
12 | "rm",
13 | "/home/user/.local/share/ChimeraX/commands",
14 | "/home/user/.local/share/ChimeraX/file_history",
15 | "/home/user/.local/share/ChimeraX/preregistration"
16 | ]
17 | },
18 | {
19 | "func": "execute",
20 | "command": "rm -f /home/user/.config/ChimeraX/ui-*",
21 | "shell": true
22 | },
23 | {
24 | "func": "launch",
25 | "wait": 7.5,
26 | "command": [
27 | "chimerax",
28 | "--cmd",
29 | "remotecontrol rest start json true port «PORTLIKE»"
30 | ]
31 | },
32 | {
33 | "func": "clear_log"
34 | },
35 | {
36 | "func": "open",
37 | "name": "4r0u"
38 | },
39 | {
40 | "func": "turn",
41 | "axis": "y",
42 | "angle": 1
43 | }
44 | ],
45 | "evaluate": [
46 | {
47 | "type": "stop",
48 | "value": "FAIL"
49 | }
50 | ]
51 | }
52 |
--------------------------------------------------------------------------------
/tasks/VM/ChimeraX/C-01.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "ChimeraX",
3 | "sort": "VM",
4 | "steps": 5,
5 | "instruction": "Answer the question: what is the name of residue id /A:6?",
6 | "version": "0.1",
7 | "snapshot": "sci_bench",
8 | "initialize": [
9 | {
10 | "func": "execute",
11 | "command": [
12 | "rm",
13 | "/home/user/.local/share/ChimeraX/commands",
14 | "/home/user/.local/share/ChimeraX/file_history",
15 | "/home/user/.local/share/ChimeraX/preregistration"
16 | ]
17 | },
18 | {
19 | "func": "execute",
20 | "command": "rm -f /home/user/.config/ChimeraX/ui-*",
21 | "shell": true
22 | },
23 | {
24 | "func": "launch",
25 | "wait": 7.5,
26 | "command": [
27 | "chimerax",
28 | "--cmd",
29 | "remotecontrol rest start json true port «PORTLIKE»"
30 | ]
31 | },
32 | {
33 | "func": "clear_log"
34 | },
35 | {
36 | "func": "open",
37 | "name": "3ppd"
38 | },
39 | {
40 | "func": "turn",
41 | "axis": "y",
42 | "angle": 1
43 | }
44 | ],
45 | "evaluate": [
46 | {
47 | "type": "stop",
48 | "value": "ANS",
49 | "args": ["ASN"]
50 | }
51 | ],
52 | "ans": "ANS ASN"
53 | }
54 |
--------------------------------------------------------------------------------
/tasks/VM/ChimeraX/C-02.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "ChimeraX",
3 | "sort": "VM",
4 | "steps": 5,
5 | "instruction": "Submit your answer: the number of oxygen atoms in the current model.",
6 | "version": "0.1",
7 | "snapshot": "sci_bench",
8 | "initialize": [
9 | {
10 | "func": "execute",
11 | "command": [
12 | "rm",
13 | "/home/user/.local/share/ChimeraX/commands",
14 | "/home/user/.local/share/ChimeraX/file_history",
15 | "/home/user/.local/share/ChimeraX/preregistration"
16 | ]
17 | },
18 | {
19 | "func": "execute",
20 | "command": "rm -f /home/user/.config/ChimeraX/ui-*",
21 | "shell": true
22 | },
23 | {
24 | "func": "launch",
25 | "wait": 7.5,
26 | "command": [
27 | "chimerax",
28 | "--cmd",
29 | "remotecontrol rest start json true port «PORTLIKE»"
30 | ]
31 | },
32 | {
33 | "func": "clear_log"
34 | },
35 | {
36 | "func": "open",
37 | "name": "2olx"
38 | },
39 | {
40 | "func": "turn",
41 | "axis": "y",
42 | "angle": 1
43 | }
44 | ],
45 | "evaluate": [
46 | {
47 | "type": "stop",
48 | "value": "ANS",
49 | "args": ["9"]
50 | }
51 | ],
52 | "ans": "ANS 9"
53 | }
54 |
--------------------------------------------------------------------------------
/tasks/VM/ChimeraX/C-03.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "ChimeraX",
3 | "sort": "VM",
4 | "steps": 5,
5 | "instruction": "Submit your answer: DNA sequence of Chain A in upper case.",
6 | "version": "0.1",
7 | "snapshot": "sci_bench",
8 | "initialize": [
9 | {
10 | "func": "execute",
11 | "command": [
12 | "rm",
13 | "/home/user/.local/share/ChimeraX/commands",
14 | "/home/user/.local/share/ChimeraX/file_history",
15 | "/home/user/.local/share/ChimeraX/preregistration"
16 | ]
17 | },
18 | {
19 | "func": "execute",
20 | "command": "rm -f /home/user/.config/ChimeraX/ui-*",
21 | "shell": true
22 | },
23 | {
24 | "func": "launch",
25 | "wait": 7.5,
26 | "command": [
27 | "chimerax",
28 | "--cmd",
29 | "remotecontrol rest start json true port «PORTLIKE»"
30 | ]
31 | },
32 | {
33 | "func": "clear_log"
34 | },
35 | {
36 | "func": "open",
37 | "name": "251d"
38 | },
39 | {
40 | "func": "turn",
41 | "axis": "y",
42 | "angle": 1
43 | }
44 | ],
45 | "evaluate": [
46 | {
47 | "type": "stop",
48 | "value": "ANS",
49 | "args": ["CTCGAG"]
50 | }
51 | ],
52 | "ans": "ANS CTCGAG"
53 | }
54 |
--------------------------------------------------------------------------------
/tasks/VM/ChimeraX/C-04.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "ChimeraX",
3 | "sort": "VM",
4 | "steps": 5,
5 | "instruction": "Submit your answer: the number of Hydrogen atoms in /A:1.",
6 | "version": "0.1",
7 | "snapshot": "sci_bench",
8 | "initialize": [
9 | {
10 | "func": "execute",
11 | "command": [
12 | "rm",
13 | "/home/user/.local/share/ChimeraX/commands",
14 | "/home/user/.local/share/ChimeraX/file_history",
15 | "/home/user/.local/share/ChimeraX/preregistration"
16 | ]
17 | },
18 | {
19 | "func": "execute",
20 | "command": "rm -f /home/user/.config/ChimeraX/ui-*",
21 | "shell": true
22 | },
23 | {
24 | "func": "launch",
25 | "wait": 7.5,
26 | "command": [
27 | "chimerax",
28 | "--cmd",
29 | "remotecontrol rest start json true port «PORTLIKE»"
30 | ]
31 | },
32 | {
33 | "func": "clear_log"
34 | },
35 | {
36 | "func": "open",
37 | "name": "4r0u"
38 | },
39 | {
40 | "func": "turn",
41 | "axis": "y",
42 | "angle": 1
43 | }
44 | ],
45 | "evaluate": [
46 | {
47 | "type": "stop",
48 | "value": "ANS",
49 | "args": ["12"]
50 | }
51 | ],
52 | "ans": "ANS 12"
53 | }
54 |
--------------------------------------------------------------------------------
/tasks/VM/ChimeraX/C-05.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "ChimeraX",
3 | "sort": "VM",
4 | "steps": 5,
5 | "instruction": "Submit your answer: the number of bonds shown in the base pairs under plain styling.",
6 | "version": "0.1",
7 | "snapshot": "sci_bench",
8 | "initialize": [
9 | {
10 | "func": "execute",
11 | "command": [
12 | "rm",
13 | "/home/user/.local/share/ChimeraX/commands",
14 | "/home/user/.local/share/ChimeraX/file_history",
15 | "/home/user/.local/share/ChimeraX/preregistration"
16 | ]
17 | },
18 | {
19 | "func": "execute",
20 | "command": "rm -f /home/user/.config/ChimeraX/ui-*",
21 | "shell": true
22 | },
23 | {
24 | "func": "launch",
25 | "wait": 7.5,
26 | "command": [
27 | "chimerax",
28 | "--cmd",
29 | "remotecontrol rest start json true port «PORTLIKE»"
30 | ]
31 | },
32 | {
33 | "func": "clear_log"
34 | },
35 | {
36 | "func": "open",
37 | "name": "3bna"
38 | },
39 | {
40 | "func": "turn",
41 | "axis": "y",
42 | "angle": 1
43 | }
44 | ],
45 | "evaluate": [
46 | {
47 | "type": "stop",
48 | "value": "ANS",
49 | "args": ["30"]
50 | }
51 | ],
52 | "ans": "ANS 30"
53 | }
54 |
--------------------------------------------------------------------------------
/tasks/VM/ChimeraX/C-06.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "ChimeraX",
3 | "sort": "VM",
4 | "steps": 10,
5 | "instruction": "What is the distance between two atoms named CD? Answer the question by pure value with two decimal places unitted in Å.",
6 | "version": "0.1",
7 | "snapshot": "sci_bench",
8 | "initialize": [
9 | {
10 | "func": "execute",
11 | "command": [
12 | "rm",
13 | "/home/user/.local/share/ChimeraX/commands",
14 | "/home/user/.local/share/ChimeraX/file_history",
15 | "/home/user/.local/share/ChimeraX/preregistration"
16 | ]
17 | },
18 | {
19 | "func": "execute",
20 | "command": "rm -f /home/user/.config/ChimeraX/ui-*",
21 | "shell": true
22 | },
23 | {
24 | "func": "launch",
25 | "wait": 7.5,
26 | "command": [
27 | "chimerax",
28 | "--cmd",
29 | "remotecontrol rest start json true port «PORTLIKE»"
30 | ]
31 | },
32 | {
33 | "func": "clear_log"
34 | },
35 | {
36 | "func": "open",
37 | "name": "2olx"
38 | },
39 | {
40 | "func": "turn",
41 | "axis": "y",
42 | "angle": 1
43 | }
44 | ],
45 | "evaluate": [
46 | {
47 | "type": "stop",
48 | "value": "ANS",
49 | "args": ["9.39"]
50 | }
51 | ],
52 | "ans": "ANS 9.39"
53 | }
54 |
--------------------------------------------------------------------------------
/tasks/VM/ChimeraX/C-07.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "ChimeraX",
3 | "sort": "VM",
4 | "steps": 10,
5 | "instruction": "What is the angle between /A GLN4 OE1, OXT and GLN 3 OE1? Answer the question by pure value with two decimal places.",
6 | "version": "0.1",
7 | "snapshot": "sci_bench",
8 | "initialize": [
9 | {
10 | "func": "execute",
11 | "command": [
12 | "rm",
13 | "/home/user/.local/share/ChimeraX/commands",
14 | "/home/user/.local/share/ChimeraX/file_history",
15 | "/home/user/.local/share/ChimeraX/preregistration"
16 | ]
17 | },
18 | {
19 | "func": "execute",
20 | "command": "rm -f /home/user/.config/ChimeraX/ui-*",
21 | "shell": true
22 | },
23 | {
24 | "func": "launch",
25 | "wait": 7.5,
26 | "command": [
27 | "chimerax",
28 | "--cmd",
29 | "remotecontrol rest start json true port «PORTLIKE»"
30 | ]
31 | },
32 | {
33 | "func": "clear_log"
34 | },
35 | {
36 | "func": "open",
37 | "name": "2olx"
38 | },
39 | {
40 | "func": "turn",
41 | "axis": "y",
42 | "angle": 1
43 | }
44 | ],
45 | "evaluate": [
46 | {
47 | "type": "stop",
48 | "value": "ANS",
49 | "args": ["109.03"]
50 | }
51 | ],
52 | "ans": "ANS 109.03"
53 | }
54 |
--------------------------------------------------------------------------------
/tasks/VM/GrassGIS/A-01.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "GrassGIS",
3 | "sort": "VM",
4 | "steps": 5,
5 | "instruction": "Switch to natural_earth_dataset and load countries@PERMANENT in Grass GIS.",
6 | "version": "0.1",
7 | "snapshot": "sci_bench",
8 | "initialize": [
9 | {
10 | "func": "execute",
11 | "command": "rm -rf /home/user/grassdata/*/*/.gislock",
12 | "shell": true
13 | },
14 | {
15 | "func": "launch",
16 | "wait": 5,
17 | "command": "gnome-terminal -- /bin/bash -ic \"FLASK_PORT=8000 grass --gui /home/user/grassdata/world_latlong_wgs84/PERMANENT\"",
18 | "shell": true
19 | }
20 | ],
21 | "evaluate": [
22 | {
23 | "type": "info",
24 | "key": "lambda dump: dump['layers']",
25 | "value": "countries@PERMANENT",
26 | "pred": "lambda key, value: any([item['name'] == value for item in key])"
27 | }
28 | ]
29 | }
--------------------------------------------------------------------------------
/tasks/VM/GrassGIS/A-02.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "GrassGIS",
3 | "sort": "VM",
4 | "steps": 5,
5 | "instruction": "Delete the current layer and load countries@PERMANENT in Grass GIS.",
6 | "version": "0.1",
7 | "snapshot": "sci_bench",
8 | "initialize": [
9 | {
10 | "func": "execute",
11 | "command": "rm -rf /home/user/grassdata/*/*/.gislock",
12 | "shell": true
13 | },
14 | {
15 | "func": "launch",
16 | "wait": 5,
17 | "command": "gnome-terminal -- /bin/bash -ic \"FLASK_PORT=8000 grass --gui /home/user/grassdata/world_latlong_wgs84/PERMANENT\"",
18 | "shell": true
19 | },
20 | {
21 | "func": "map",
22 | "grassdb": "/home/user/grassdata",
23 | "location": "natural_earth_dataset",
24 | "mapset": "PERMANENT"
25 | },
26 | {
27 | "func": "layer",
28 | "wait": 5,
29 | "query": {
30 | "name": "natural_earth"
31 | }
32 | }
33 | ],
34 | "evaluate": [
35 | {
36 | "type": "info",
37 | "key": "lambda dump: dump['layers']",
38 | "value": "natural_earth@PERMANENT",
39 | "pred": "lambda key, value: all([item['name'] != value for item in key])"
40 | },
41 | {
42 | "type": "info",
43 | "key": "lambda dump: dump['layers']",
44 | "value": "countries@PERMANENT",
45 | "pred": "lambda key, value: any([item['name'] == value for item in key])"
46 | }
47 | ]
48 | }
--------------------------------------------------------------------------------
/tasks/VM/GrassGIS/A-03.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "GrassGIS",
3 | "sort": "VM",
4 | "steps": 5,
5 | "instruction": "Hide the toolbar of Map Display 1 in Grass GIS.",
6 | "version": "0.1",
7 | "snapshot": "sci_bench",
8 | "initialize": [
9 | {
10 | "func": "execute",
11 | "command": "rm -rf /home/user/grassdata/*/*/.gislock",
12 | "shell": true
13 | },
14 | {
15 | "func": "launch",
16 | "wait": 5,
17 | "command": "gnome-terminal -- /bin/bash -ic \"FLASK_PORT=8000 grass --gui /home/user/grassdata/world_latlong_wgs84/PERMANENT\"",
18 | "shell": true
19 | },
20 | {
21 | "func": "map",
22 | "grassdb": "/home/user/grassdata",
23 | "location": "natural_earth_dataset",
24 | "mapset": "PERMANENT"
25 | }
26 | ],
27 | "evaluate": [
28 | {
29 | "type": "info",
30 | "key": "lambda dump: dump['toolbars']['shown']",
31 | "value": false
32 | }
33 | ]
34 | }
--------------------------------------------------------------------------------
/tasks/VM/GrassGIS/A-04.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "GrassGIS",
3 | "sort": "VM",
4 | "steps": 5,
5 | "instruction": "Enter the editing interface of the current layer in Grass GIS.",
6 | "version": "0.1",
7 | "snapshot": "sci_bench",
8 | "initialize": [
9 | {
10 | "func": "execute",
11 | "command": "rm -rf /home/user/grassdata/*/*/.gislock",
12 | "shell": true
13 | },
14 | {
15 | "func": "launch",
16 | "wait": 5,
17 | "command": "gnome-terminal -- /bin/bash -ic \"FLASK_PORT=8000 grass --gui /home/user/grassdata/world_latlong_wgs84/PERMANENT\"",
18 | "shell": true
19 | },
20 | {
21 | "func": "map",
22 | "grassdb": "/home/user/grassdata",
23 | "location": "natural_earth_dataset",
24 | "mapset": "PERMANENT"
25 | },
26 | {
27 | "func": "layer",
28 | "wait": 5,
29 | "query": {
30 | "name": "countries"
31 | }
32 | }
33 | ],
34 | "evaluate": [
35 | {
36 | "type": "info",
37 | "key": "lambda dump: dump['toolbars']['keys']",
38 | "value": "vdigit",
39 | "pred": "lambda key, value: value in key"
40 | },
41 | {
42 | "type": "info",
43 | "key": "lambda dump: dump['toolbars']['layer']['name']",
44 | "value": "countries@PERMANENT"
45 | }
46 | ]
47 | }
--------------------------------------------------------------------------------
/tasks/VM/GrassGIS/A-05.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "GrassGIS",
3 | "sort": "VM",
4 | "steps": 5,
5 | "instruction": "Switch the status bar to display rows and cols data in Grass GIS.",
6 | "version": "0.1",
7 | "snapshot": "sci_bench",
8 | "initialize": [
9 | {
10 | "func": "execute",
11 | "command": "rm -rf /home/user/grassdata/*/*/.gislock",
12 | "shell": true
13 | },
14 | {
15 | "func": "launch",
16 | "wait": 5,
17 | "command": "gnome-terminal -- /bin/bash -ic \"FLASK_PORT=8000 grass --gui /home/user/grassdata/world_latlong_wgs84/PERMANENT\"",
18 | "shell": true
19 | },
20 | {
21 | "func": "map",
22 | "grassdb": "/home/user/grassdata",
23 | "location": "natural_earth_dataset",
24 | "mapset": "PERMANENT"
25 | },
26 | {
27 | "func": "layer",
28 | "wait": 5,
29 | "query": {
30 | "name": "countries"
31 | }
32 | }
33 | ],
34 | "evaluate": [
35 | {
36 | "type": "info",
37 | "key": "lambda dump: dump['statusbar']['mode']",
38 | "value": 3
39 | }
40 | ]
41 | }
--------------------------------------------------------------------------------
/tasks/VM/GrassGIS/A-06.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "GrassGIS",
3 | "sort": "VM",
4 | "steps": 5,
5 | "instruction": "Switch the map scale to 1:400 in Grass GIS.",
6 | "version": "0.1",
7 | "snapshot": "sci_bench",
8 | "initialize": [
9 | {
10 | "func": "execute",
11 | "command": "rm -rf /home/user/grassdata/*/*/.gislock",
12 | "shell": true
13 | },
14 | {
15 | "func": "launch",
16 | "wait": 5,
17 | "command": "gnome-terminal -- /bin/bash -ic \"FLASK_PORT=8000 grass --gui /home/user/grassdata/world_latlong_wgs84/PERMANENT\"",
18 | "shell": true
19 | },
20 | {
21 | "func": "map",
22 | "grassdb": "/home/user/grassdata",
23 | "location": "natural_earth_dataset",
24 | "mapset": "PERMANENT"
25 | },
26 | {
27 | "func": "layer",
28 | "wait": 5,
29 | "query": {
30 | "name": "countries"
31 | }
32 | }
33 | ],
34 | "evaluate": [
35 | {
36 | "type": "info",
37 | "key": "lambda dump: dump['statusbar']['scale']",
38 | "value": 400,
39 | "pred": "lambda key, value: abs(key - value) < 0.1"
40 | }
41 | ]
42 | }
--------------------------------------------------------------------------------
/tasks/VM/GrassGIS/A-07.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "GrassGIS",
3 | "sort": "VM",
4 | "steps": 10,
5 | "instruction": "Move the center point to 25°E, 20°N in Grass GIS.",
6 | "version": "0.1",
7 | "snapshot": "sci_bench",
8 | "initialize": [
9 | {
10 | "func": "execute",
11 | "command": "rm -rf /home/user/grassdata/*/*/.gislock",
12 | "shell": true
13 | },
14 | {
15 | "func": "launch",
16 | "wait": 5,
17 | "command": "gnome-terminal -- /bin/bash -ic \"FLASK_PORT=8000 grass --gui /home/user/grassdata/world_latlong_wgs84/PERMANENT\"",
18 | "shell": true
19 | },
20 | {
21 | "func": "map",
22 | "grassdb": "/home/user/grassdata",
23 | "location": "natural_earth_dataset",
24 | "mapset": "PERMANENT"
25 | },
26 | {
27 | "func": "layer",
28 | "wait": 5,
29 | "query": {
30 | "name": "countries"
31 | }
32 | }
33 | ],
34 | "evaluate": [
35 | {
36 | "type": "info",
37 | "key": "lambda dump: dump['region']['center_easting']",
38 | "value": 25,
39 | "pred": "lambda key, value: abs((key % 360) - value) < 0.1"
40 | },
41 | {
42 | "type": "info",
43 | "key": "lambda dump: dump['region']['center_northing']",
44 | "value": 20,
45 | "pred": "lambda key, value: abs(key - value) < 0.1"
46 | }
47 | ]
48 | }
--------------------------------------------------------------------------------
/tasks/VM/GrassGIS/A-09.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "GrassGIS",
3 | "sort": "VM",
4 | "steps": 5,
5 | "instruction": "Which type of maps is more than the other in grassdata_piemonte_utm32n_wgs84_grass7/PERMANENT? Answer the question via either `ANS raster` or `ANS vector`.",
6 | "version": "0.1",
7 | "snapshot": "sci_bench",
8 | "initialize": [
9 | {
10 | "func": "execute",
11 | "command": "rm -rf /home/user/grassdata/*/*/.gislock",
12 | "shell": true
13 | },
14 | {
15 | "func": "launch",
16 | "wait": 5,
17 | "command": "gnome-terminal -- /bin/bash -ic \"FLASK_PORT=8000 grass --gui /home/user/grassdata/world_latlong_wgs84/PERMANENT\"",
18 | "shell": true
19 | },
20 | {
21 | "func": "map",
22 | "grassdb": "/home/user/grassdata",
23 | "location": "natural_earth_dataset",
24 | "mapset": "PERMANENT"
25 | }
26 | ],
27 | "evaluate": [
28 | {
29 | "type": "stop",
30 | "value": "ANS",
31 | "args": ["vector"]
32 | }
33 | ],
34 | "ans": "ANS vector"
35 | }
--------------------------------------------------------------------------------
/tasks/VM/GrassGIS/A-10.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "GrassGIS",
3 | "sort": "VM",
4 | "steps": 5,
5 | "instruction": "How many provinces are there in Piemonte? Submit your answer via an integer.",
6 | "version": "0.1",
7 | "snapshot": "sci_bench",
8 | "initialize": [
9 | {
10 | "func": "execute",
11 | "command": "rm -rf /home/user/grassdata/*/*/.gislock",
12 | "shell": true
13 | },
14 | {
15 | "func": "launch",
16 | "wait": 5,
17 | "command": "gnome-terminal -- /bin/bash -ic \"FLASK_PORT=8000 grass --gui /home/user/grassdata/world_latlong_wgs84/PERMANENT\"",
18 | "shell": true
19 | },
20 | {
21 | "func": "map",
22 | "grassdb": "/home/user/grassdata",
23 | "location": "grassdata_piemonte_utm32n_wgs84_grass7",
24 | "mapset": "PERMANENT"
25 | },
26 | {
27 | "func": "layer",
28 | "wait": 5,
29 | "query": {
30 | "name": "boundary_region"
31 | }
32 | }
33 | ],
34 | "evaluate": [
35 | {
36 | "type": "stop",
37 | "value": "ANS",
38 | "args": ["8"]
39 | }
40 | ],
41 | "ans": "ANS 8"
42 | }
--------------------------------------------------------------------------------
/tasks/VM/GrassGIS/B-01.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "GrassGIS",
3 | "sort": "VM",
4 | "steps": 5,
5 | "instruction": "Set the transparency to between 48 and 52 in Grass GIS.",
6 | "version": "0.1",
7 | "snapshot": "sci_bench",
8 | "initialize": [
9 | {
10 | "func": "execute",
11 | "command": "rm -rf /home/user/grassdata/*/*/.gislock",
12 | "shell": true
13 | },
14 | {
15 | "func": "launch",
16 | "wait": 5,
17 | "command": "gnome-terminal -- /bin/bash -ic \"FLASK_PORT=8000 grass --gui /home/user/grassdata/world_latlong_wgs84/PERMANENT\"",
18 | "shell": true
19 | },
20 | {
21 | "func": "map",
22 | "grassdb": "/home/user/grassdata",
23 | "location": "natural_earth_dataset",
24 | "mapset": "PERMANENT"
25 | },
26 | {
27 | "func": "layer",
28 | "wait": 5,
29 | "query": {
30 | "name": "countries"
31 | }
32 | }
33 | ],
34 | "evaluate": [
35 | {
36 | "type": "info",
37 | "key": "lambda dump: [item for item in dump['layers'] if item['name'] == 'countries@PERMANENT']",
38 | "value": [0.48, 0.52],
39 | "pred": "lambda key, value: key[0]['opacity'] > value[0] and key[0]['opacity'] < value[1]"
40 | }
41 | ]
42 | }
--------------------------------------------------------------------------------
/tasks/VM/GrassGIS/B-02.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "GrassGIS",
3 | "sort": "VM",
4 | "steps": 5,
5 | "instruction": "Change the name of the current layer into 'country_boundaries' in Grass GIS.",
6 | "version": "0.1",
7 | "snapshot": "sci_bench",
8 | "initialize": [
9 | {
10 | "func": "execute",
11 | "command": "rm -rf /home/user/grassdata/*/*/.gislock",
12 | "shell": true
13 | },
14 | {
15 | "func": "launch",
16 | "wait": 5,
17 | "command": "gnome-terminal -- /bin/bash -ic \"FLASK_PORT=8000 grass --gui /home/user/grassdata/world_latlong_wgs84/PERMANENT\"",
18 | "shell": true
19 | },
20 | {
21 | "func": "map",
22 | "grassdb": "/home/user/grassdata",
23 | "location": "natural_earth_dataset",
24 | "mapset": "PERMANENT"
25 | },
26 | {
27 | "func": "layer",
28 | "wait": 5,
29 | "query": {
30 | "name": "countries"
31 | }
32 | }
33 | ],
34 | "evaluate": [
35 | {
36 | "type": "info",
37 | "key": "lambda dump: [item for item in dump['windows'] if item['name'] == 'countries@PERMANENT']",
38 | "value": "country_boundaries",
39 | "pred": "lambda key, value: key[0]['_text'] == value"
40 | }
41 | ]
42 | }
--------------------------------------------------------------------------------
/tasks/VM/GrassGIS/B-03.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "GrassGIS",
3 | "sort": "VM",
4 | "steps": 5,
5 | "instruction": "Display category number and topology information of the current map in Grass GIS.",
6 | "version": "0.1",
7 | "snapshot": "sci_bench",
8 | "initialize": [
9 | {
10 | "func": "execute",
11 | "command": "rm -rf /home/user/grassdata/*/*/.gislock",
12 | "shell": true
13 | },
14 | {
15 | "func": "launch",
16 | "wait": 5,
17 | "command": "gnome-terminal -- /bin/bash -ic \"FLASK_PORT=8000 grass --gui /home/user/grassdata/world_latlong_wgs84/PERMANENT\"",
18 | "shell": true
19 | },
20 | {
21 | "func": "map",
22 | "grassdb": "/home/user/grassdata",
23 | "location": "grassdata_piemonte_utm32n_wgs84_grass7",
24 | "mapset": "PERMANENT"
25 | },
26 | {
27 | "func": "layer",
28 | "wait": 5,
29 | "query": {
30 | "name": "boundary_region"
31 | }
32 | }
33 | ],
34 | "evaluate": [
35 | {
36 | "type": "info",
37 | "key": "lambda dump: [param for param in [item for item in dump['windows'] if item['name'] == 'boundary_region@PERMANENT'][0]['_data'][1]['params'] if param['name'] == 'display']",
38 | "value": ["cat", "topo"],
39 | "pred": "lambda key, value: all([val in key[0]['value'] for val in value])"
40 | }
41 | ]
42 | }
--------------------------------------------------------------------------------
/tasks/VM/GrassGIS/B-04.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "GrassGIS",
3 | "sort": "VM",
4 | "steps": 5,
5 | "instruction": "Change the area color to gray, whose RGB = (191, 191, 191) in Grass GIS.",
6 | "version": "0.1",
7 | "snapshot": "sci_bench",
8 | "initialize": [
9 | {
10 | "func": "execute",
11 | "command": "rm -rf /home/user/grassdata/*/*/.gislock",
12 | "shell": true
13 | },
14 | {
15 | "func": "launch",
16 | "wait": 5,
17 | "command": "gnome-terminal -- /bin/bash -ic \"FLASK_PORT=8000 grass --gui /home/user/grassdata/world_latlong_wgs84/PERMANENT\"",
18 | "shell": true
19 | },
20 | {
21 | "func": "map",
22 | "grassdb": "/home/user/grassdata",
23 | "location": "grassdata_piemonte_utm32n_wgs84_grass7",
24 | "mapset": "PERMANENT"
25 | },
26 | {
27 | "func": "layer",
28 | "wait": 5,
29 | "query": {
30 | "name": "boundary_region"
31 | }
32 | }
33 | ],
34 | "evaluate": [
35 | {
36 | "type": "info",
37 | "key": "lambda dump: [param for param in [item for item in dump['windows'] if item['name'] == 'boundary_region@PERMANENT'][0]['_data'][1]['params'] if param['name'] == 'fill_color']",
38 | "value": "191:191:191:255",
39 | "pred": "lambda key, value: key[0]['value'] == value"
40 | }
41 | ]
42 | }
--------------------------------------------------------------------------------
/tasks/VM/GrassGIS/B-05.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "GrassGIS",
3 | "sort": "VM",
4 | "steps": 10,
5 | "instruction": "Load the major roads of Piemonte and change their color to pure white in Grass GIS.",
6 | "version": "0.1",
7 | "snapshot": "sci_bench",
8 | "initialize": [
9 | {
10 | "func": "execute",
11 | "command": "rm -rf /home/user/grassdata/*/*/.gislock",
12 | "shell": true
13 | },
14 | {
15 | "func": "launch",
16 | "wait": 5,
17 | "command": "gnome-terminal -- /bin/bash -ic \"FLASK_PORT=8000 grass --gui /home/user/grassdata/world_latlong_wgs84/PERMANENT\"",
18 | "shell": true
19 | },
20 | {
21 | "func": "map",
22 | "grassdb": "/home/user/grassdata",
23 | "location": "grassdata_piemonte_utm32n_wgs84_grass7",
24 | "mapset": "PERMANENT"
25 | },
26 | {
27 | "func": "layer",
28 | "wait": 5,
29 | "query": {
30 | "name": "boundary_region"
31 | }
32 | }
33 | ],
34 | "evaluate": [
35 | {
36 | "type": "info",
37 | "key": "lambda dump: [param for param in [item for item in dump['windows'] if item['name'] == 'roadsmajor@PERMANENT'][0]['_data'][1]['params'] if param['name'] == 'color']",
38 | "value": "255:255:255:255",
39 | "pred": "lambda key, value: key[0]['value'] == value"
40 | }
41 | ]
42 | }
--------------------------------------------------------------------------------
/tasks/VM/GrassGIS/B-06.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "GrassGIS",
3 | "sort": "VM",
4 | "steps": 10,
5 | "instruction": "Load the railways of Piemonte with a line width of 2 in Grass GIS.",
6 | "version": "0.1",
7 | "snapshot": "sci_bench",
8 | "initialize": [
9 | {
10 | "func": "execute",
11 | "command": "rm -rf /home/user/grassdata/*/*/.gislock",
12 | "shell": true
13 | },
14 | {
15 | "func": "launch",
16 | "wait": 5,
17 | "command": "gnome-terminal -- /bin/bash -ic \"FLASK_PORT=8000 grass --gui /home/user/grassdata/world_latlong_wgs84/PERMANENT\"",
18 | "shell": true
19 | },
20 | {
21 | "func": "map",
22 | "grassdb": "/home/user/grassdata",
23 | "location": "grassdata_piemonte_utm32n_wgs84_grass7",
24 | "mapset": "PERMANENT"
25 | },
26 | {
27 | "func": "layer",
28 | "wait": 5,
29 | "query": {
30 | "name": "boundary_region"
31 | }
32 | }
33 | ],
34 | "evaluate": [
35 | {
36 | "type": "info",
37 | "key": "lambda dump: [param for param in [item for item in dump['windows'] if item['name'] == 'railroads@PERMANENT'][0]['_data'][1]['params'] if param['name'] == 'width']",
38 | "value": "2",
39 | "pred": "lambda key, value: key[0]['value'] == value"
40 | }
41 | ]
42 | }
--------------------------------------------------------------------------------
/tasks/VM/GrassGIS/B-07.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "GrassGIS",
3 | "sort": "VM",
4 | "steps": 10,
5 | "instruction": "Mark all fire stations in Piemonte with flag icons in Grass GIS.",
6 | "version": "0.1",
7 | "snapshot": "sci_bench",
8 | "initialize": [
9 | {
10 | "func": "execute",
11 | "command": "rm -rf /home/user/grassdata/*/*/.gislock",
12 | "shell": true
13 | },
14 | {
15 | "func": "launch",
16 | "wait": 5,
17 | "command": "gnome-terminal -- /bin/bash -ic \"FLASK_PORT=8000 grass --gui /home/user/grassdata/world_latlong_wgs84/PERMANENT\"",
18 | "shell": true
19 | },
20 | {
21 | "func": "map",
22 | "grassdb": "/home/user/grassdata",
23 | "location": "grassdata_piemonte_utm32n_wgs84_grass7",
24 | "mapset": "PERMANENT"
25 | },
26 | {
27 | "func": "layer",
28 | "wait": 5,
29 | "query": {
30 | "name": "boundary_region"
31 | }
32 | }
33 | ],
34 | "evaluate": [
35 | {
36 | "type": "info",
37 | "key": "lambda dump: [param for param in [item for item in dump['windows'] if item['name'] == 'firestations@PERMANENT'][0]['_data'][1]['params'] if param['name'] == 'icon']",
38 | "value": "basic/marker",
39 | "pred": "lambda key, value: key[0]['value'] == value"
40 | }
41 | ]
42 | }
--------------------------------------------------------------------------------
/tasks/VM/GrassGIS/B-08.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "GrassGIS",
3 | "sort": "VM",
4 | "steps": 10,
5 | "instruction": "Mark all hospitals in Piemonte with a marker size of 10 in Grass GIS.",
6 | "version": "0.1",
7 | "snapshot": "sci_bench",
8 | "initialize": [
9 | {
10 | "func": "execute",
11 | "command": "rm -rf /home/user/grassdata/*/*/.gislock",
12 | "shell": true
13 | },
14 | {
15 | "func": "launch",
16 | "wait": 5,
17 | "command": "gnome-terminal -- /bin/bash -ic \"FLASK_PORT=8000 grass --gui /home/user/grassdata/world_latlong_wgs84/PERMANENT\"",
18 | "shell": true
19 | },
20 | {
21 | "func": "map",
22 | "grassdb": "/home/user/grassdata",
23 | "location": "grassdata_piemonte_utm32n_wgs84_grass7",
24 | "mapset": "PERMANENT"
25 | },
26 | {
27 | "func": "layer",
28 | "wait": 5,
29 | "query": {
30 | "name": "boundary_region"
31 | }
32 | }
33 | ],
34 | "evaluate": [
35 | {
36 | "type": "info",
37 | "key": "lambda dump: [param for param in [item for item in dump['windows'] if item['name'] == 'hospitals@PERMANENT'][0]['_data'][1]['params'] if param['name'] == 'size']",
38 | "value": "10",
39 | "pred": "lambda key, value: key[0]['value'] == value"
40 | }
41 | ]
42 | }
--------------------------------------------------------------------------------
/tasks/VM/GrassGIS/B-09.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "GrassGIS",
3 | "sort": "VM",
4 | "steps": 10,
5 | "instruction": "Mark all and only all schools that are confirmed to be wheelchair accessible in Grass GIS.",
6 | "version": "0.1",
7 | "snapshot": "sci_bench",
8 | "initialize": [
9 | {
10 | "func": "execute",
11 | "command": "rm -rf /home/user/grassdata/*/*/.gislock",
12 | "shell": true
13 | },
14 | {
15 | "func": "launch",
16 | "wait": 5,
17 | "command": "gnome-terminal -- /bin/bash -ic \"FLASK_PORT=8000 grass --gui /home/user/grassdata/world_latlong_wgs84/PERMANENT\"",
18 | "shell": true
19 | },
20 | {
21 | "func": "map",
22 | "grassdb": "/home/user/grassdata",
23 | "location": "grassdata_piemonte_utm32n_wgs84_grass7",
24 | "mapset": "PERMANENT"
25 | },
26 | {
27 | "func": "layer",
28 | "wait": 5,
29 | "query": {
30 | "name": "boundary_region"
31 | }
32 | }
33 | ],
34 | "evaluate": [
35 | {
36 | "type": "info",
37 | "key": "lambda dump: [param for param in [item for item in dump['windows'] if item['name'] == 'schools@PERMANENT'][0]['_data'][1]['params'] if param['name'] == 'where']",
38 | "value": ["wheelchair", "=", "yes"],
39 | "pred": "lambda key, value: all([val in key[0]['value'] for val in value])"
40 | }
41 | ]
42 | }
--------------------------------------------------------------------------------
/tasks/VM/GrassGIS/B-11.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "GrassGIS",
3 | "sort": "VM",
4 | "steps": 5,
5 | "instruction": "Output the metadata of the current map in Grass GIS.",
6 | "version": "0.1",
7 | "snapshot": "sci_bench",
8 | "initialize": [
9 | {
10 | "func": "execute",
11 | "command": "rm -rf /home/user/grassdata/*/*/.gislock",
12 | "shell": true
13 | },
14 | {
15 | "func": "launch",
16 | "wait": 5,
17 | "command": "gnome-terminal -- /bin/bash -ic \"FLASK_PORT=8000 grass --gui /home/user/grassdata/world_latlong_wgs84/PERMANENT\"",
18 | "shell": true
19 | },
20 | {
21 | "func": "map",
22 | "grassdb": "/home/user/grassdata",
23 | "location": "grassdata_piemonte_utm32n_wgs84_grass7",
24 | "mapset": "PERMANENT"
25 | },
26 | {
27 | "func": "layer",
28 | "wait": 5,
29 | "query": {
30 | "name": "boundary_region"
31 | }
32 | }
33 | ],
34 | "evaluate": [
35 | {
36 | "type": "info",
37 | "key": "lambda dump: dump['output']",
38 | "value": "v.info map=boundary_region@PERMANENT",
39 | "pred": "lambda key, value: value in key"
40 | }
41 | ]
42 | }
--------------------------------------------------------------------------------
/tasks/VM/GrassGIS/B-12.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "GrassGIS",
3 | "sort": "VM",
4 | "steps": 5,
5 | "instruction": "Perform univariate raster statistics on lake map in Grass GIS.",
6 | "version": "0.1",
7 | "snapshot": "sci_bench",
8 | "initialize": [
9 | {
10 | "func": "execute",
11 | "command": "rm -rf /home/user/grassdata/*/*/.gislock",
12 | "shell": true
13 | },
14 | {
15 | "func": "launch",
16 | "wait": 5,
17 | "command": "gnome-terminal -- /bin/bash -ic \"FLASK_PORT=8000 grass --gui /home/user/grassdata/world_latlong_wgs84/PERMANENT\"",
18 | "shell": true
19 | },
20 | {
21 | "func": "map",
22 | "grassdb": "/home/user/grassdata",
23 | "location": "grassdata_piemonte_utm32n_wgs84_grass7",
24 | "mapset": "PERMANENT"
25 | },
26 | {
27 | "func": "layer",
28 | "wait": 5,
29 | "query": {
30 | "name": "boundary_region"
31 | }
32 | }
33 | ],
34 | "evaluate": [
35 | {
36 | "type": "info",
37 | "key": "lambda dump: dump['output']",
38 | "value": "n: 263975",
39 | "pred": "lambda key, value: value in key"
40 | }
41 | ]
42 | }
--------------------------------------------------------------------------------
/tasks/VM/GrassGIS/B-13.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "GrassGIS",
3 | "sort": "VM",
4 | "steps": 5,
5 | "instruction": "Report raster statistics on current map in Grass GIS.",
6 | "version": "0.1",
7 | "snapshot": "sci_bench",
8 | "initialize": [
9 | {
10 | "func": "execute",
11 | "command": "rm -rf /home/user/grassdata/*/*/.gislock",
12 | "shell": true
13 | },
14 | {
15 | "func": "launch",
16 | "wait": 5,
17 | "command": "gnome-terminal -- /bin/bash -ic \"FLASK_PORT=8000 grass --gui /home/user/grassdata/world_latlong_wgs84/PERMANENT\"",
18 | "shell": true
19 | },
20 | {
21 | "func": "map",
22 | "grassdb": "/home/user/grassdata",
23 | "location": "grassdata_piemonte_utm32n_wgs84_grass7",
24 | "mapset": "PERMANENT"
25 | },
26 | {
27 | "func": "layer",
28 | "wait": 5,
29 | "query": {
30 | "name": "boundary_region"
31 | }
32 | }
33 | ],
34 | "evaluate": [
35 | {
36 | "type": "stop",
37 | "value": "FAIL"
38 | }
39 | ]
40 | }
--------------------------------------------------------------------------------
/tasks/VM/GrassGIS/C-01.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "GrassGIS",
3 | "sort": "VM",
4 | "steps": 5,
5 | "instruction": "Submit your answer: number of the least developed regions in the current mapset.",
6 | "version": "0.1",
7 | "snapshot": "sci_bench",
8 | "initialize": [
9 | {
10 | "func": "execute",
11 | "command": "rm -rf /home/user/grassdata/*/*/.gislock",
12 | "shell": true
13 | },
14 | {
15 | "func": "launch",
16 | "wait": 5,
17 | "command": "gnome-terminal -- /bin/bash -ic \"FLASK_PORT=8000 grass --gui /home/user/grassdata/world_latlong_wgs84/PERMANENT\"",
18 | "shell": true
19 | },
20 | {
21 | "func": "map",
22 | "grassdb": "/home/user/grassdata",
23 | "location": "natural_earth_dataset",
24 | "mapset": "PERMANENT"
25 | }
26 | ],
27 | "evaluate": [
28 | {
29 | "type": "stop",
30 | "value": "ANS",
31 | "args": ["61"]
32 | }
33 | ],
34 | "ans": "ANS 61"
35 | }
--------------------------------------------------------------------------------
/tasks/VM/GrassGIS/C-02.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "GrassGIS",
3 | "sort": "VM",
4 | "steps": 5,
5 | "instruction": "What is the provincial administrative region corresponding to 35.319°N? Answer the question in local language.",
6 | "version": "0.1",
7 | "snapshot": "sci_bench",
8 | "initialize": [
9 | {
10 | "func": "execute",
11 | "command": "rm -rf /home/user/grassdata/*/*/.gislock",
12 | "shell": true
13 | },
14 | {
15 | "func": "launch",
16 | "wait": 5,
17 | "command": "gnome-terminal -- /bin/bash -ic \"FLASK_PORT=8000 grass --gui /home/user/grassdata/world_latlong_wgs84/PERMANENT\"",
18 | "shell": true
19 | },
20 | {
21 | "func": "map",
22 | "grassdb": "/home/user/grassdata",
23 | "location": "natural_earth_dataset",
24 | "mapset": "PERMANENT"
25 | }
26 | ],
27 | "evaluate": [
28 | {
29 | "type": "stop",
30 | "value": "ANS",
31 | "args": ["경상남도"]
32 | }
33 | ],
34 | "ans": "ANS 경상남도"
35 | }
--------------------------------------------------------------------------------
/tasks/VM/GrassGIS/C-03.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "GrassGIS",
3 | "sort": "VM",
4 | "steps": 5,
5 | "instruction": "Submit your answer: name of the fire station located in Corso Regina Margherita in the current mapset.",
6 | "version": "0.1",
7 | "snapshot": "sci_bench",
8 | "initialize": [
9 | {
10 | "func": "execute",
11 | "command": "rm -rf /home/user/grassdata/*/*/.gislock",
12 | "shell": true
13 | },
14 | {
15 | "func": "launch",
16 | "wait": 5,
17 | "command": "gnome-terminal -- /bin/bash -ic \"FLASK_PORT=8000 grass --gui /home/user/grassdata/world_latlong_wgs84/PERMANENT\"",
18 | "shell": true
19 | },
20 | {
21 | "func": "map",
22 | "grassdb": "/home/user/grassdata",
23 | "location": "grassdata_piemonte_utm32n_wgs84_grass7",
24 | "mapset": "PERMANENT"
25 | }
26 | ],
27 | "evaluate": [
28 | {
29 | "type": "stop",
30 | "value": "ANS",
31 | "args": ["Vigili", "del", "Fuoco"]
32 | }
33 | ],
34 | "ans": "ANS Vigili del Fuoco"
35 | }
--------------------------------------------------------------------------------
/tasks/VM/GrassGIS/C-04.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "GrassGIS",
3 | "sort": "VM",
4 | "steps": 5,
5 | "instruction": "Submit your answer: number of hospitals in ASTI according to the current mapset.",
6 | "version": "0.1",
7 | "snapshot": "sci_bench",
8 | "initialize": [
9 | {
10 | "func": "execute",
11 | "command": "rm -rf /home/user/grassdata/*/*/.gislock",
12 | "shell": true
13 | },
14 | {
15 | "func": "launch",
16 | "wait": 5,
17 | "command": "gnome-terminal -- /bin/bash -ic \"FLASK_PORT=8000 grass --gui /home/user/grassdata/world_latlong_wgs84/PERMANENT\"",
18 | "shell": true
19 | },
20 | {
21 | "func": "map",
22 | "grassdb": "/home/user/grassdata",
23 | "location": "grassdata_piemonte_utm32n_wgs84_grass7",
24 | "mapset": "PERMANENT"
25 | }
26 | ],
27 | "evaluate": [
28 | {
29 | "type": "stop",
30 | "value": "ANS",
31 | "args": ["6"]
32 | }
33 | ],
34 | "ans": "ANS 6"
35 | }
--------------------------------------------------------------------------------
/tasks/VM/GrassGIS/C-05.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "GrassGIS",
3 | "sort": "VM",
4 | "steps": 5,
5 | "instruction": "Submit your answer: post code of the school called Scuola superiore N.Rosa.",
6 | "version": "0.1",
7 | "snapshot": "sci_bench",
8 | "initialize": [
9 | {
10 | "func": "execute",
11 | "command": "rm -rf /home/user/grassdata/*/*/.gislock",
12 | "shell": true
13 | },
14 | {
15 | "func": "launch",
16 | "wait": 5,
17 | "command": "gnome-terminal -- /bin/bash -ic \"FLASK_PORT=8000 grass --gui /home/user/grassdata/world_latlong_wgs84/PERMANENT\"",
18 | "shell": true
19 | },
20 | {
21 | "func": "map",
22 | "grassdb": "/home/user/grassdata",
23 | "location": "grassdata_piemonte_utm32n_wgs84_grass7",
24 | "mapset": "PERMANENT"
25 | }
26 | ],
27 | "evaluate": [
28 | {
29 | "type": "stop",
30 | "value": "ANS",
31 | "args": ["10053"]
32 | }
33 | ],
34 | "ans": "ANS 10053"
35 | }
--------------------------------------------------------------------------------
/tasks/VM/GrassGIS/C-06.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "GrassGIS",
3 | "sort": "VM",
4 | "steps": 5,
5 | "instruction": "How many POIs are marked as Christian among the 3609 POIs in the current mapset? Answer the question via an integer.",
6 | "version": "0.1",
7 | "snapshot": "sci_bench",
8 | "initialize": [
9 | {
10 | "func": "execute",
11 | "command": "rm -rf /home/user/grassdata/*/*/.gislock",
12 | "shell": true
13 | },
14 | {
15 | "func": "launch",
16 | "wait": 5,
17 | "command": "gnome-terminal -- /bin/bash -ic \"FLASK_PORT=8000 grass --gui /home/user/grassdata/world_latlong_wgs84/PERMANENT\"",
18 | "shell": true
19 | },
20 | {
21 | "func": "map",
22 | "grassdb": "/home/user/grassdata",
23 | "location": "grassdata_piemonte_utm32n_wgs84_grass7",
24 | "mapset": "PERMANENT"
25 | }
26 | ],
27 | "evaluate": [
28 | {
29 | "type": "stop",
30 | "value": "ANS",
31 | "args": ["360"]
32 | }
33 | ],
34 | "ans": "ANS 360"
35 | }
--------------------------------------------------------------------------------
/tasks/VM/GrassGIS/C-07.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "GrassGIS",
3 | "sort": "VM",
4 | "steps": 5,
5 | "instruction": "What is the feature code of Capanna Margherita among 10146 geonames in the current mapset? Submit your answer in upper case.",
6 | "version": "0.1",
7 | "snapshot": "sci_bench",
8 | "initialize": [
9 | {
10 | "func": "execute",
11 | "command": "rm -rf /home/user/grassdata/*/*/.gislock",
12 | "shell": true
13 | },
14 | {
15 | "func": "launch",
16 | "wait": 5,
17 | "command": "gnome-terminal -- /bin/bash -ic \"FLASK_PORT=8000 grass --gui /home/user/grassdata/world_latlong_wgs84/PERMANENT\"",
18 | "shell": true
19 | },
20 | {
21 | "func": "map",
22 | "grassdb": "/home/user/grassdata",
23 | "location": "grassdata_piemonte_utm32n_wgs84_grass7",
24 | "mapset": "PERMANENT"
25 | }
26 | ],
27 | "evaluate": [
28 | {
29 | "type": "stop",
30 | "value": "ANS",
31 | "args": ["CMP"]
32 | }
33 | ],
34 | "ans": "ANS CMP"
35 | }
--------------------------------------------------------------------------------
/tasks/VM/GrassGIS/D-01.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "GrassGIS",
3 | "sort": "VM",
4 | "steps": 10,
5 | "instruction": "Add a column named 'COLOR' to the current map with the type to be `varchar` in Grass GIS.",
6 | "version": "0.1",
7 | "snapshot": "sci_bench",
8 | "initialize": [
9 | {
10 | "func": "execute",
11 | "command": "rm -rf /home/user/grassdata/*/*/.gislock",
12 | "shell": true
13 | },
14 | {
15 | "func": "launch",
16 | "wait": 5,
17 | "command": "gnome-terminal -- /bin/bash -ic \"FLASK_PORT=8000 grass --gui /home/user/grassdata/world_latlong_wgs84/PERMANENT\"",
18 | "shell": true
19 | },
20 | {
21 | "func": "map",
22 | "grassdb": "/home/user/grassdata",
23 | "location": "grassdata_piemonte_utm32n_wgs84_grass7",
24 | "mapset": "PERMANENT"
25 | },
26 | {
27 | "func": "layer",
28 | "wait": 5,
29 | "query": {
30 | "name": "boundary_region"
31 | }
32 | }
33 | ],
34 | "evaluate": [
35 | {
36 | "type": "db",
37 | "cmd": "v.db.select",
38 | "kwargs": {
39 | "map": "boundary_region@PERMANENT",
40 | "format": "json"
41 | },
42 | "key": "lambda out: out['info']['columns']",
43 | "value": {
44 | "name": "COLOR",
45 | "sql_type": "CHARACTER"
46 | },
47 | "pred": "lambda key, value: any([item['name'] == value['name'] and item['sql_type'] == value['sql_type'] for item in key])"
48 | }
49 | ]
50 | }
--------------------------------------------------------------------------------
/tasks/VM/GrassGIS/D-02.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "GrassGIS",
3 | "sort": "VM",
4 | "steps": 10,
5 | "instruction": "Delete the column named 'ISTAT' in the current map in Grass GIS.",
6 | "version": "0.1",
7 | "snapshot": "sci_bench",
8 | "initialize": [
9 | {
10 | "func": "execute",
11 | "command": "rm -rf /home/user/grassdata/*/*/.gislock",
12 | "shell": true
13 | },
14 | {
15 | "func": "launch",
16 | "wait": 5,
17 | "command": "gnome-terminal -- /bin/bash -ic \"FLASK_PORT=8000 grass --gui /home/user/grassdata/world_latlong_wgs84/PERMANENT\"",
18 | "shell": true
19 | },
20 | {
21 | "func": "map",
22 | "grassdb": "/home/user/grassdata",
23 | "location": "grassdata_piemonte_utm32n_wgs84_grass7",
24 | "mapset": "PERMANENT"
25 | },
26 | {
27 | "func": "layer",
28 | "wait": 5,
29 | "query": {
30 | "name": "boundary_region"
31 | }
32 | }
33 | ],
34 | "evaluate": [
35 | {
36 | "type": "db",
37 | "cmd": "v.db.select",
38 | "kwargs": {
39 | "map": "boundary_region@PERMANENT",
40 | "format": "json"
41 | },
42 | "key": "lambda out: out['info']['columns']",
43 | "value": "ISTAT",
44 | "pred": "lambda key, value: all([item['name'] != value for item in key])"
45 | }
46 | ]
47 | }
--------------------------------------------------------------------------------
/tasks/VM/GrassGIS/D-03.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "GrassGIS",
3 | "sort": "VM",
4 | "steps": 10,
5 | "instruction": "There is only one POI whose start date contains both month and day in the current mapset. Delete them and only keep the year data in Grass GIS.",
6 | "version": "0.1",
7 | "snapshot": "sci_bench",
8 | "initialize": [
9 | {
10 | "func": "execute",
11 | "command": "rm -rf /home/user/grassdata/*/*/.gislock",
12 | "shell": true
13 | },
14 | {
15 | "func": "launch",
16 | "wait": 5,
17 | "command": "gnome-terminal -- /bin/bash -ic \"FLASK_PORT=8000 grass --gui /home/user/grassdata/world_latlong_wgs84/PERMANENT\"",
18 | "shell": true
19 | },
20 | {
21 | "func": "map",
22 | "grassdb": "/home/user/grassdata",
23 | "location": "grassdata_piemonte_utm32n_wgs84_grass7",
24 | "mapset": "PERMANENT"
25 | },
26 | {
27 | "func": "layer",
28 | "wait": 5,
29 | "query": {
30 | "name": "boundary_region"
31 | }
32 | }
33 | ],
34 | "evaluate": [
35 | {
36 | "type": "db",
37 | "cmd": "v.db.select",
38 | "kwargs": {
39 | "map": "points_of_interest@PERMANENT",
40 | "format": "json"
41 | },
42 | "key": "lambda out: [item for item in out['records'] if item['name'] == 'Guglielmo Pepe']",
43 | "value": "1858",
44 | "pred": "lambda key, value: key[0]['start_date'] == value"
45 | }
46 | ]
47 | }
--------------------------------------------------------------------------------
/tasks/VM/GrassGIS/D-04.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "GrassGIS",
3 | "sort": "VM",
4 | "steps": 15,
5 | "instruction": "There is a point located in the Mediterranean Sea. Please find and delete it.",
6 | "version": "0.1",
7 | "snapshot": "sci_bench",
8 | "initialize": [
9 | {
10 | "func": "execute",
11 | "command": "rm -rf /home/user/grassdata/*/*/.gislock",
12 | "shell": true
13 | },
14 | {
15 | "func": "launch",
16 | "wait": 5,
17 | "command": "gnome-terminal -- /bin/bash -ic \"FLASK_PORT=8000 grass --gui /home/user/grassdata/world_latlong_wgs84/PERMANENT\"",
18 | "shell": true
19 | },
20 | {
21 | "func": "map",
22 | "grassdb": "/home/user/grassdata",
23 | "location": "natural_earth_dataset",
24 | "mapset": "PERMANENT"
25 | },
26 | {
27 | "func": "layer",
28 | "wait": 5,
29 | "query": {
30 | "name": "countries"
31 | }
32 | }
33 | ],
34 | "evaluate": [
35 | {
36 | "type": "db",
37 | "cmd": "v.to.db",
38 | "kwargs": {
39 | "flags": "p",
40 | "map": "countries@PERMANENT",
41 | "type": "point",
42 | "option": "coor"
43 | },
44 | "key": "lambda out: out.strip()",
45 | "value": "cat|x|y|z\n257|-79.1050308691105|8.348947891274|0",
46 | "pred": "lambda key, value: key == value"
47 | }
48 | ]
49 | }
--------------------------------------------------------------------------------
/tasks/VM/KAlgebra/A-01.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "KAlgebra",
3 | "sort": "VM",
4 | "steps": 5,
5 | "instruction": "Calculate the conjugate of (1 + i) in KAlgebra and store the answer in variable `p`.",
6 | "version": "0.1",
7 | "snapshot": "sci_bench",
8 | "initialize": [
9 | {
10 | "func": "launch",
11 | "wait": 2.5,
12 | "command": "LD_LIBRARY_PATH=/home/user/6.5.0/gcc_64/lib /app/bin/kalgebra «PORTLIKE»",
13 | "shell": true
14 | }
15 | ],
16 | "evaluate": [
17 | {
18 | "type": "var",
19 | "key": "p",
20 | "value": "1+-i"
21 | }
22 | ],
23 | "ans": "p := conjugate(1+i)"
24 | }
--------------------------------------------------------------------------------
/tasks/VM/KAlgebra/A-04.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "KAlgebra",
3 | "sort": "VM",
4 | "steps": 5,
5 | "instruction": "Answer the question: name of the built-in function which calculate the inverse of a matrix.",
6 | "version": "0.1",
7 | "snapshot": "sci_bench",
8 | "initialize": [
9 | {
10 | "func": "launch",
11 | "wait": 2.5,
12 | "command": "LD_LIBRARY_PATH=/home/user/6.5.0/gcc_64/lib /app/bin/kalgebra «PORTLIKE»",
13 | "shell": true
14 | },
15 | {
16 | "func": "tab",
17 | "index": 3
18 | }
19 | ],
20 | "evaluate": [
21 | {
22 | "type": "stop",
23 | "value": "FAIL"
24 | }
25 | ],
26 | "ans": "FAIL"
27 | }
--------------------------------------------------------------------------------
/tasks/VM/KAlgebra/B-01.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "KAlgebra",
3 | "sort": "VM",
4 | "steps": 5,
5 | "instruction": "Switch to the tab of '2D Graph' and plot f(x) = x^2 in KAlgebra.",
6 | "version": "0.1",
7 | "snapshot": "sci_bench",
8 | "initialize": [
9 | {
10 | "func": "launch",
11 | "wait": 2.5,
12 | "command": "LD_LIBRARY_PATH=/home/user/6.5.0/gcc_64/lib /app/bin/kalgebra «PORTLIKE»",
13 | "shell": true
14 | }
15 | ],
16 | "evaluate": [
17 | {
18 | "type": "eqn",
19 | "key": [
20 | [-11, 10.746585199686596],
21 | [-12, 8],
22 | [0, -11],
23 | [0.97, 4],
24 | [1, 1],
25 | [11, -6],
26 | [11.92, 142.0864],
27 | [18, 324],
28 | [4.33, 18.7489],
29 | [4.96, -4.038706673849717]
30 | ],
31 | "value": {
32 | "(-11, 10.746585199686596)": false,
33 | "(-12, 8)": false,
34 | "(0, -11)": false,
35 | "(0.97, 4)": false,
36 | "(1, 1)": true,
37 | "(11, -6)": false,
38 | "(11.92, 142.0864)": true,
39 | "(18, 324)": true,
40 | "(4.33, 18.7489)": true,
41 | "(4.96, -4.038706673849717)": false
42 | }
43 | }
44 | ],
45 | "ans": "x->x^2"
46 | }
--------------------------------------------------------------------------------
/tasks/VM/KAlgebra/B-02.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "KAlgebra",
3 | "sort": "VM",
4 | "steps": 5,
5 | "instruction": "Remove Euler's constant from variables list in KAlgebra.",
6 | "version": "0.1",
7 | "snapshot": "sci_bench",
8 | "initialize": [
9 | {
10 | "func": "launch",
11 | "wait": 2.5,
12 | "command": "LD_LIBRARY_PATH=/home/user/6.5.0/gcc_64/lib /app/bin/kalgebra «PORTLIKE»",
13 | "shell": true
14 | }
15 | ],
16 | "evaluate": [
17 | {
18 | "type": "var",
19 | "key": "euler",
20 | "value": "#UNDEF"
21 | }
22 | ],
23 | "ans": "N/A"
24 | }
--------------------------------------------------------------------------------
/tasks/VM/KAlgebra/B-03.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "KAlgebra",
3 | "sort": "VM",
4 | "steps": 5,
5 | "instruction": "Delete the trifolium curve in KAlgebra.",
6 | "version": "0.1",
7 | "snapshot": "sci_bench",
8 | "initialize": [
9 | {
10 | "func": "launch",
11 | "wait": 2.5,
12 | "command": "LD_LIBRARY_PATH=/home/user/6.5.0/gcc_64/lib /app/bin/kalgebra «PORTLIKE»",
13 | "shell": true
14 | },
15 | {
16 | "func": "tab",
17 | "index": 1
18 | },
19 | {
20 | "func": "func_2d",
21 | "expr": "q->6*sin(3*q)"
22 | }
23 | ],
24 | "evaluate": [
25 | {
26 | "type": "eqn",
27 | "key": "#SIZE",
28 | "value": 0
29 | }
30 | ],
31 | "ans": "N/A"
32 | }
--------------------------------------------------------------------------------
/tasks/VM/KAlgebra/C-01.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "KAlgebra",
3 | "sort": "VM",
4 | "steps": 5,
5 | "instruction": "Calculate the value of log_2(3) in KAlgebra and store the result in variable `p`.",
6 | "version": "0.1",
7 | "snapshot": "sci_bench",
8 | "initialize": [
9 | {
10 | "func": "launch",
11 | "wait": 2.5,
12 | "command": "LD_LIBRARY_PATH=/home/user/6.5.0/gcc_64/lib /app/bin/kalgebra «PORTLIKE»",
13 | "shell": true
14 | }
15 | ],
16 | "evaluate": [
17 | {
18 | "type": "val",
19 | "key": "p",
20 | "value": 1.58496250072
21 | }
22 | ],
23 | "ans": "p := log(3)/log(2)"
24 | }
--------------------------------------------------------------------------------
/tasks/VM/KAlgebra/C-02.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "KAlgebra",
3 | "sort": "VM",
4 | "steps": 5,
5 | "instruction": "Compare e^π and π^e in KAlgebra and store the bigger one in variable `p`.",
6 | "version": "0.1",
7 | "snapshot": "sci_bench",
8 | "initialize": [
9 | {
10 | "func": "launch",
11 | "wait": 2.5,
12 | "command": "LD_LIBRARY_PATH=/home/user/6.5.0/gcc_64/lib /app/bin/kalgebra «PORTLIKE»",
13 | "shell": true
14 | }
15 | ],
16 | "evaluate": [
17 | {
18 | "type": "val",
19 | "key": "p",
20 | "value": 23.1406926205
21 | }
22 | ],
23 | "ans": "p := e^pi"
24 | }
--------------------------------------------------------------------------------
/tasks/VM/KAlgebra/C-03.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "KAlgebra",
3 | "sort": "VM",
4 | "steps": 5,
5 | "instruction": "Suppose f(n) to be the n-st fibonacci sequence and f(1) = f(2) = 1. Calculate f(24) in KAlgebra and submit the result via `ANS`.",
6 | "version": "0.1",
7 | "snapshot": "sci_bench",
8 | "initialize": [
9 | {
10 | "func": "launch",
11 | "wait": 2.5,
12 | "command": "LD_LIBRARY_PATH=/home/user/6.5.0/gcc_64/lib /app/bin/kalgebra «PORTLIKE»",
13 | "shell": true
14 | }
15 | ],
16 | "evaluate": [
17 | {
18 | "type": "stop",
19 | "value": "ANS",
20 | "args": ["46368"]
21 | }
22 | ],
23 | "ans": "ANS 46368"
24 | }
--------------------------------------------------------------------------------
/tasks/VM/KAlgebra/C-04.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "KAlgebra",
3 | "sort": "VM",
4 | "steps": 5,
5 | "instruction": "Calculate the sum of the first 20 terms of harmonic series in KAlgebra and store the result in variable `p`.",
6 | "version": "0.1",
7 | "snapshot": "sci_bench",
8 | "initialize": [
9 | {
10 | "func": "launch",
11 | "wait": 2.5,
12 | "command": "LD_LIBRARY_PATH=/home/user/6.5.0/gcc_64/lib /app/bin/kalgebra «PORTLIKE»",
13 | "shell": true
14 | }
15 | ],
16 | "evaluate": [
17 | {
18 | "type": "val",
19 | "key": "p",
20 | "value": 3.59773965714
21 | }
22 | ],
23 | "ans": "p := sum(1/n: n=1..20)"
24 | }
--------------------------------------------------------------------------------
/tasks/VM/KAlgebra/C-05.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "KAlgebra",
3 | "sort": "VM",
4 | "steps": 5,
5 | "instruction": "Load script from ~/script.kal where vector a are defined. Let b = (√3, 2); calculate their inner product in KAlgebra and store the result in variable `p`.",
6 | "version": "0.1",
7 | "snapshot": "sci_bench",
8 | "initialize": [
9 | {
10 | "func": "launch",
11 | "wait": 2.5,
12 | "command": "LD_LIBRARY_PATH=/home/user/6.5.0/gcc_64/lib /app/bin/kalgebra «PORTLIKE»",
13 | "shell": true
14 | },
15 | {
16 | "func": "touch",
17 | "text": "a := vector{-1, root(3, 3)}",
18 | "path": "/home/user/script.kal"
19 | }
20 | ],
21 | "evaluate": [
22 | {
23 | "type": "val",
24 | "key": "p",
25 | "value": 1.15244833305
26 | }
27 | ],
28 | "ans": "Ctrl+L: ~/script.kal\nb := vector {root(3, 2), 2}\nc := scalarproduct(a, b)\np := c[1]+c[2]"
29 | }
--------------------------------------------------------------------------------
/tasks/VM/KAlgebra/C-06.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "KAlgebra",
3 | "sort": "VM",
4 | "steps": 5,
5 | "instruction": "Given planes 3x + 4y + 5z - 1 = 0 and 3x + 4y + 5z + 6 = 0, calculate their distance in KAlgebra and store the result in variable `p`.",
6 | "version": "0.1",
7 | "snapshot": "sci_bench",
8 | "initialize": [
9 | {
10 | "func": "launch",
11 | "wait": 2.5,
12 | "command": "LD_LIBRARY_PATH=/home/user/6.5.0/gcc_64/lib /app/bin/kalgebra «PORTLIKE»",
13 | "shell": true
14 | }
15 | ],
16 | "evaluate": [
17 | {
18 | "type": "val",
19 | "key": "p",
20 | "value": 0.989949493661
21 | }
22 | ],
23 | "ans": "p := abs(6-(-1))/root(3^2+4^2+5^2, 2)"
24 | }
--------------------------------------------------------------------------------
/tasks/VM/KAlgebra/C-07.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "KAlgebra",
3 | "sort": "VM",
4 | "steps": 5,
5 | "instruction": "Given that f(x) = ln(x + 1) + (x^2 - x), plot f'(x) in KAlgebra.",
6 | "version": "0.1",
7 | "snapshot": "sci_bench",
8 | "initialize": [
9 | {
10 | "func": "launch",
11 | "wait": 2.5,
12 | "command": "LD_LIBRARY_PATH=/home/user/6.5.0/gcc_64/lib /app/bin/kalgebra «PORTLIKE»",
13 | "shell": true
14 | },
15 | {
16 | "func": "tab",
17 | "index": 1
18 | }
19 | ],
20 | "evaluate": [
21 | {
22 | "type": "eqn",
23 | "key": [
24 | [-11, -23.18032786885246],
25 | [-13, -27.152941176470588],
26 | [-19, -39.10497237569061],
27 | [-19.38, -39.86292513444529],
28 | [-3, 0.31085698061003864],
29 | [-6.58, -4],
30 | [-8, -17.246153846153845],
31 | [0, -1.0],
32 | [3, -11],
33 | [5.75, 5.318634437154422]
34 | ],
35 | "value": {
36 | "(-11, -23.18032786885246)": true,
37 | "(-13, -27.152941176470588)": true,
38 | "(-19, -39.10497237569061)": true,
39 | "(-19.38, -39.86292513444529)": true,
40 | "(-3, 0.31085698061003864)": false,
41 | "(-6.58, -4)": false,
42 | "(-8, -17.246153846153845)": true,
43 | "(0, -1.0)": true,
44 | "(3, -11)": false,
45 | "(5.75, 5.318634437154422)": false
46 | }
47 | }
48 | ],
49 | "ans": "diff(ln(x^2+1)+x^2-x:x)"
50 | }
--------------------------------------------------------------------------------
/tasks/VM/KAlgebra/C-09.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "KAlgebra",
3 | "sort": "VM",
4 | "steps": 5,
5 | "instruction": "Load the script from ~/script.kal where Archimedean spiral's equation r(a) is defined, then use the predefined variable r to plot the spiral of r(2) in KAlgebra.",
6 | "version": "0.1",
7 | "snapshot": "sci_bench",
8 | "initialize": [
9 | {
10 | "func": "launch",
11 | "wait": 2.5,
12 | "command": "LD_LIBRARY_PATH=/home/user/6.5.0/gcc_64/lib /app/bin/kalgebra «PORTLIKE»",
13 | "shell": true
14 | },
15 | {
16 | "func": "touch",
17 | "text": "r := a->q->a*q",
18 | "path": "/home/user/script.kal"
19 | }
20 | ],
21 | "evaluate": [
22 | {
23 | "type": "eqn",
24 | "key": [
25 | [-1, -2],
26 | [-11, -25],
27 | [-4.02, -8.04],
28 | [0.13, 0.26],
29 | [1, 2],
30 | [3.73, 7.46],
31 | [30, 60],
32 | [4, 7],
33 | [8, 16]
34 | ],
35 | "value": {
36 | "(-1, -2)": true,
37 | "(-11, -25)": false,
38 | "(-4.02, -8.04)": true,
39 | "(0.13, 0.26)": true,
40 | "(1, 2)": true,
41 | "(3.73, 7.46)": true,
42 | "(30, 60)": true,
43 | "(4, 7)": false,
44 | "(8, 16)": true
45 | }
46 | }
47 | ],
48 | "ans": "Ctrl+L: ~/script.kal; q->(r(2))(q)"
49 | }
--------------------------------------------------------------------------------
/tasks/VM/KAlgebra/C-15.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "KAlgebra",
3 | "sort": "VM",
4 | "steps": 5,
5 | "instruction": "Plot a plane passing through three points (1, 0, 0), (0, 2, 0) and (0, 0, 3) in KAlgebra.",
6 | "version": "0.1",
7 | "snapshot": "sci_bench",
8 | "initialize": [
9 | {
10 | "func": "launch",
11 | "wait": 2.5,
12 | "command": "LD_LIBRARY_PATH=/home/user/6.5.0/gcc_64/lib /app/bin/kalgebra «PORTLIKE»",
13 | "shell": true
14 | },
15 | {
16 | "func": "tab",
17 | "index": 2
18 | }
19 | ],
20 | "evaluate": [
21 | {
22 | "type": "eqn",
23 | "key": [
24 | [-10, -1.22, 34.83],
25 | [-14, 19.19, -9.17019058015396],
26 | [-2.75, 17.93, -15.645],
27 | [-5, -10, 33.0],
28 | [-9.03, 11, -4.801796108572736],
29 | [0, -2, 6.0],
30 | [0, 1, 12],
31 | [16.71, 10.62, -63.06],
32 | [2, -9, 10.5],
33 | [8.87, -18.39, -3.0081830274403254]
34 | ],
35 | "value": {
36 | "(-10, -1.22, 34.83)": true,
37 | "(-14, 19.19, -9.17019058015396)": false,
38 | "(-2.75, 17.93, -15.645)": true,
39 | "(-5, -10, 33.0)": true,
40 | "(-9.03, 11, -4.801796108572736)": false,
41 | "(0, -2, 6.0)": true,
42 | "(0, 1, 12)": false,
43 | "(16.71, 10.62, -63.06)": true,
44 | "(2, -9, 10.5)": true,
45 | "(8.87, -18.39, -3.0081830274403254)": false
46 | }
47 | }
48 | ],
49 | "ans": "x+y/2+z/3=1"
50 | }
--------------------------------------------------------------------------------
/tasks/VM/KAlgebra/C-16.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "KAlgebra",
3 | "sort": "VM",
4 | "steps": 5,
5 | "instruction": "Plot a plane parallel to the plane 3x + y - z + 4 = 0 with a z-intercept of -2 in KAlgebra.",
6 | "version": "0.1",
7 | "snapshot": "sci_bench",
8 | "initialize": [
9 | {
10 | "func": "launch",
11 | "wait": 2.5,
12 | "command": "LD_LIBRARY_PATH=/home/user/6.5.0/gcc_64/lib /app/bin/kalgebra «PORTLIKE»",
13 | "shell": true
14 | },
15 | {
16 | "func": "tab",
17 | "index": 2
18 | }
19 | ],
20 | "evaluate": [
21 | {
22 | "type": "eqn",
23 | "key": [
24 | [-11.55, -0.41, -3],
25 | [-3, 0.93, -10.07],
26 | [-7, -11, -34],
27 | [0, -4.92, -6.92],
28 | [13.77, 14.78, 4],
29 | [16, 4.23, 5.2994113210638405],
30 | [2, 6.83, -13.06308853851272],
31 | [3.65, 5, -5.80082733054053],
32 | [5, 3, 20],
33 | [9, -1.86, 7]
34 | ],
35 | "value": {
36 | "(-11.55, -0.41, -3)": false,
37 | "(-3, 0.93, -10.07)": true,
38 | "(-7, -11, -34)": true,
39 | "(0, -4.92, -6.92)": true,
40 | "(13.77, 14.78, 4)": false,
41 | "(16, 4.23, 5.2994113210638405)": false,
42 | "(2, 6.83, -13.06308853851272)": false,
43 | "(3.65, 5, -5.80082733054053)": false,
44 | "(5, 3, 20)": false,
45 | "(9, -1.86, 7)": false
46 | }
47 | }
48 | ],
49 | "ans": "3x+y-z=2"
50 | }
--------------------------------------------------------------------------------
/tasks/VM/KAlgebra/D-01.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "KAlgebra",
3 | "sort": "VM",
4 | "steps": 10,
5 | "instruction": "Suppose that f(n) = ln(n) / n where n is a natural number. Calculate the max f(n) in KAlgebra and store the value in variable `M`. Hint: try to plot the corresponding function to observe its monotonicity.",
6 | "version": "0.1",
7 | "snapshot": "sci_bench",
8 | "initialize": [
9 | {
10 | "func": "launch",
11 | "wait": 2.5,
12 | "command": "LD_LIBRARY_PATH=/home/user/6.5.0/gcc_64/lib /app/bin/kalgebra «PORTLIKE»",
13 | "shell": true
14 | },
15 | {
16 | "func": "tab",
17 | "index": 1
18 | }
19 | ],
20 | "evaluate": [
21 | {
22 | "type": "val",
23 | "key": "M",
24 | "value": 0.366204096223
25 | }
26 | ],
27 | "ans": "M := ln(3)/3"
28 | }
--------------------------------------------------------------------------------
/tasks/VM/KAlgebra/D-02.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "KAlgebra",
3 | "sort": "VM",
4 | "steps": 10,
5 | "instruction": "Find the area of the given figure in KAlgebra and store the value in variable `area`.",
6 | "version": "0.1",
7 | "snapshot": "sci_bench",
8 | "initialize": [
9 | {
10 | "func": "launch",
11 | "wait": 2.5,
12 | "command": "LD_LIBRARY_PATH=/home/user/6.5.0/gcc_64/lib /app/bin/kalgebra «PORTLIKE»",
13 | "shell": true
14 | },
15 | {
16 | "func": "tab",
17 | "index": 1
18 | },
19 | {
20 | "func": "func_2d",
21 | "expr": "x^2/16+y^2/9=1"
22 | }
23 | ],
24 | "evaluate": [
25 | {
26 | "type": "val",
27 | "key": "area",
28 | "value": 37.6991118431
29 | }
30 | ],
31 | "ans": "area := pi*3*4"
32 | }
--------------------------------------------------------------------------------
/tasks/VM/KAlgebra/D-03.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "KAlgebra",
3 | "sort": "VM",
4 | "steps": 10,
5 | "instruction": "Let f(x) = 2sin(x) and g(x) = x + 1/(2x). Find the number of zeros of the equation f(x) = g(x) and submit your answer via `ANS`.",
6 | "version": "0.1",
7 | "snapshot": "sci_bench",
8 | "initialize": [
9 | {
10 | "func": "launch",
11 | "wait": 2.5,
12 | "command": "LD_LIBRARY_PATH=/home/user/6.5.0/gcc_64/lib /app/bin/kalgebra «PORTLIKE»",
13 | "shell": true
14 | }
15 | ],
16 | "evaluate": [
17 | {
18 | "type": "stop",
19 | "value": "ANS",
20 | "args": ["4"]
21 | }
22 | ],
23 | "ans": "ANS 4"
24 | }
--------------------------------------------------------------------------------
/tasks/VM/Lean/A-01.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "Lean",
3 | "sort": "VM",
4 | "steps": 10,
5 | "instruction": "theorem PT_1 {R : Sort u → Sort u → Prop} (h₁ : ∀ x, ∀ y, R x y → R y x) (h₂ : ∀ x, ∀ y, ∀ z, R x y ∧ R y z → R x z) (h₃ : ∀ x, ∃ y, R x y) : ∀ x, R x x := by sorry",
6 | "version": "0.1",
7 | "initialize": [
8 | {
9 | "func": "import",
10 | "libs": ["Mathlib"]
11 | },
12 | {
13 | "func": "query",
14 | "expr": "theorem PT_1 {R : Sort u → Sort u → Prop} (h₁ : ∀ x, ∀ y, R x y → R y x) (h₂ : ∀ x, ∀ y, ∀ z, R x y ∧ R y z → R x z) (h₃ : ∀ x, ∃ y, R x y) : ∀ x, R x x := by sorry"
15 | },
16 | {
17 | "func": "launch",
18 | "wait": 10,
19 | "command": "code /home/user/sci /home/user/sci/Sci/Basic.lean",
20 | "shell": true
21 | }
22 | ],
23 | "evaluate": [
24 | {
25 | "type": "placeholder"
26 | }
27 | ]
28 | }
29 |
--------------------------------------------------------------------------------
/tasks/VM/Lean/A-02.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "Lean",
3 | "sort": "VM",
4 | "steps": 10,
5 | "instruction": "theorem PT_2 : ack x (y + 1) < ack (x + 1) y := by sorry",
6 | "version": "0.1",
7 | "initialize": [
8 | {
9 | "func": "import",
10 | "libs": ["Mathlib"]
11 | },
12 | {
13 | "func": "query",
14 | "expr": "theorem PT_2 : ack x (y + 1) < ack (x + 1) y := by sorry"
15 | },
16 | {
17 | "func": "launch",
18 | "wait": 10,
19 | "command": "code /home/user/sci /home/user/sci/Sci/Basic.lean",
20 | "shell": true
21 | }
22 | ],
23 | "evaluate": [
24 | {
25 | "type": "placeholder"
26 | }
27 | ]
28 | }
29 |
--------------------------------------------------------------------------------
/tasks/VM/Lean/A-03.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "Lean",
3 | "sort": "VM",
4 | "steps": 15,
5 | "instruction": "theorem ST_1 (X : ZFSet) : ((IsTransitive X) ↔ (X ⊆ powerset X)) ∧ ((IsTransitive X) ↔ ((⋃₀ X : ZFSet) ⊆ X)) := by sorry",
6 | "version": "0.1",
7 | "initialize": [
8 | {
9 | "func": "import",
10 | "libs": ["Mathlib"]
11 | },
12 | {
13 | "func": "open",
14 | "libs": ["ZFSet"]
15 | },
16 | {
17 | "func": "query",
18 | "expr": "theorem ST_1 (X : ZFSet) : ((IsTransitive X) ↔ (X ⊆ powerset X)) ∧ ((IsTransitive X) ↔ ((⋃₀ X : ZFSet) ⊆ X)) := by sorry"
19 | },
20 | {
21 | "func": "launch",
22 | "wait": 10,
23 | "command": "code /home/user/sci /home/user/sci/Sci/Basic.lean",
24 | "shell": true
25 | }
26 | ],
27 | "evaluate": [
28 | {
29 | "type": "placeholder"
30 | }
31 | ]
32 | }
33 |
--------------------------------------------------------------------------------
/tasks/VM/Lean/A-04.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "Lean",
3 | "sort": "VM",
4 | "steps": 15,
5 | "instruction": "theorem ST_2 (α : Ordinal) (h₁ : IsLimit α) (h₂ : α < ω_ 1) : α.cof = ℵ := by sorry",
6 | "version": "0.1",
7 | "initialize": [
8 | {
9 | "func": "import",
10 | "libs": ["Mathlib"]
11 | },
12 | {
13 | "func": "open",
14 | "libs": ["Ordinal", "Cardinal"]
15 | },
16 | {
17 | "func": "query",
18 | "expr": "theorem ST_2 (α : Ordinal) (h₁ : IsLimit α) (h₂ : α < ω_ 1) : α.cof = ℵ := by sorry"
19 | },
20 | {
21 | "func": "launch",
22 | "wait": 10,
23 | "command": "code /home/user/sci /home/user/sci/Sci/Basic.lean",
24 | "shell": true
25 | }
26 | ],
27 | "evaluate": [
28 | {
29 | "type": "placeholder"
30 | }
31 | ]
32 | }
33 |
--------------------------------------------------------------------------------
/tasks/VM/Lean/A-05.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "Lean",
3 | "sort": "VM",
4 | "steps": 15,
5 | "instruction": "theorem ST_3 (h : 𝔠 > ℵ_ (ord ℵ₁)) : (ℷ (ℵ_ ω) = 2 ^ ℵ₀) ∧ (ℷ (ℵ_ <| ω_ 1) = 2 ^ ℵ₁) := by sorry",
6 | "version": "0.1",
7 | "initialize": [
8 | {
9 | "func": "import",
10 | "libs": ["Mathlib"]
11 | },
12 | {
13 | "func": "open",
14 | "libs": ["Ordinal", "Cardinal"]
15 | },
16 | {
17 | "func": "def",
18 | "expr": "def ℷ (κ : Cardinal) : Cardinal := κ ^ cof κ.ord"
19 | },
20 | {
21 | "func": "query",
22 | "expr": "theorem ST_3 (h : 𝔠 > ℵ_ (ord ℵ₁)) : (ℷ (ℵ_ ω) = 2 ^ ℵ₀) ∧ (ℷ (ℵ_ <| ω_ 1) = 2 ^ ℵ₁) := by sorry"
23 | },
24 | {
25 | "func": "launch",
26 | "wait": 10,
27 | "command": "code /home/user/sci /home/user/sci/Sci/Basic.lean",
28 | "shell": true
29 | }
30 | ],
31 | "evaluate": [
32 | {
33 | "type": "placeholder"
34 | }
35 | ]
36 | }
37 |
--------------------------------------------------------------------------------
/tasks/VM/Lean/B-01.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "Lean",
3 | "sort": "VM",
4 | "steps": 15,
5 | "instruction": "theorem DM_1 {a p : ℕ} (h₁ : Nat.Prime p) (h₂ : Odd a) (h₃ : IsCoprime a p) : (a ^ (p - 1) + (p - 1) ^ a) ≡ 0 [ZMOD p] := by sorry",
6 | "version": "0.1",
7 | "initialize": [
8 | {
9 | "func": "import",
10 | "libs": ["Mathlib"]
11 | },
12 | {
13 | "func": "query",
14 | "expr": "theorem DM_1 {a p : ℕ} (h₁ : Nat.Prime p) (h₂ : Odd a) (h₃ : IsCoprime a p) : (a ^ (p - 1) + (p - 1) ^ a) ≡ 0 [ZMOD p] := by sorry"
15 | },
16 | {
17 | "func": "launch",
18 | "wait": 10,
19 | "command": "code /home/user/sci /home/user/sci/Sci/Basic.lean",
20 | "shell": true
21 | }
22 | ],
23 | "evaluate": [
24 | {
25 | "type": "placeholder"
26 | }
27 | ]
28 | }
29 |
--------------------------------------------------------------------------------
/tasks/VM/Lean/B-02.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "Lean",
3 | "sort": "VM",
4 | "steps": 15,
5 | "instruction": "theorem DM_2 {n e : ℕ} {G : SimpleGraph V} [Fintype V] [Fintype G.edgeSet] [DecidableEq V] (h₁ : n = Fintype.card V ∧ e = Fintype.card G.edgeSet) (h₂ : ∀ v₁ : V, ∀ v₂ : V, ∃ w : G.Walk v₁ v₂, w.IsHamiltonian) : n ≥ 4 → 2 * e ≥ 3 * n + 1 := by sorry",
6 | "version": "0.1",
7 | "initialize": [
8 | {
9 | "func": "import",
10 | "libs": ["Mathlib"]
11 | },
12 | {
13 | "func": "query",
14 | "expr": "theorem DM_2 {n e : ℕ} {G : SimpleGraph V} [Fintype V] [Fintype G.edgeSet] [DecidableEq V] (h₁ : n = Fintype.card V ∧ e = Fintype.card G.edgeSet) (h₂ : ∀ v₁ : V, ∀ v₂ : V, ∃ w : G.Walk v₁ v₂, w.IsHamiltonian) : n ≥ 4 → 2 * e ≥ 3 * n + 1 := by sorry"
15 | },
16 | {
17 | "func": "launch",
18 | "wait": 10,
19 | "command": "code /home/user/sci /home/user/sci/Sci/Basic.lean",
20 | "shell": true
21 | }
22 | ],
23 | "evaluate": [
24 | {
25 | "type": "placeholder"
26 | }
27 | ]
28 | }
29 |
--------------------------------------------------------------------------------
/tasks/VM/Lean/B-03.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "Lean",
3 | "sort": "VM",
4 | "steps": 15,
5 | "instruction": "theorem DM_3 {L : Language} [L.Structure M₁] [L.Structure M₂] (h : M₁ ≅[L] M₂) : ∃ N : Bundled L.Structure, Nonempty (M₁ ↪ₑ[L] N) ∧ Nonempty (M₂ ↪ₑ[L] N) := by sorry",
6 | "version": "0.1",
7 | "initialize": [
8 | {
9 | "func": "import",
10 | "libs": ["Mathlib"]
11 | },
12 | {
13 | "func": "open",
14 | "libs": ["CategoryTheory", "FirstOrder"]
15 | },
16 | {
17 | "func": "query",
18 | "expr": "theorem DM_3 {L : Language} [L.Structure M₁] [L.Structure M₂] (h : M₁ ≅[L] M₂) : ∃ N : Bundled L.Structure, Nonempty (M₁ ↪ₑ[L] N) ∧ Nonempty (M₂ ↪ₑ[L] N) := by sorry"
19 | },
20 | {
21 | "func": "launch",
22 | "wait": 10,
23 | "command": "code /home/user/sci /home/user/sci/Sci/Basic.lean",
24 | "shell": true
25 | }
26 | ],
27 | "evaluate": [
28 | {
29 | "type": "placeholder"
30 | }
31 | ]
32 | }
33 |
--------------------------------------------------------------------------------
/tasks/VM/Lean/B-04.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "Lean",
3 | "sort": "VM",
4 | "steps": 15,
5 | "instruction": "theorem DM_4 [Primcodable α] [Primcodable β] [Primcodable γ] [Primcodable δ] {p : α → Prop} {q : β → Prop} {r : γ → Prop} {s : δ → Prop} (h₁ : ManyOneEquiv p r) (h₂ : ManyOneEquiv q s) : ManyOneEquiv (Sum.elim p q) (Sum.elim r s) := by sorry",
6 | "version": "0.1",
7 | "initialize": [
8 | {
9 | "func": "import",
10 | "libs": ["Mathlib"]
11 | },
12 | {
13 | "func": "query",
14 | "expr": "theorem DM_4 [Primcodable α] [Primcodable β] [Primcodable γ] [Primcodable δ] {p : α → Prop} {q : β → Prop} {r : γ → Prop} {s : δ → Prop} (h₁ : ManyOneEquiv p r) (h₂ : ManyOneEquiv q s) : ManyOneEquiv (Sum.elim p q) (Sum.elim r s) := by sorry"
15 | },
16 | {
17 | "func": "launch",
18 | "wait": 10,
19 | "command": "code /home/user/sci /home/user/sci/Sci/Basic.lean",
20 | "shell": true
21 | }
22 | ],
23 | "evaluate": [
24 | {
25 | "type": "placeholder"
26 | }
27 | ]
28 | }
29 |
--------------------------------------------------------------------------------
/tasks/VM/Lean/B-05.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "Lean",
3 | "sort": "VM",
4 | "steps": 15,
5 | "instruction": "theorem AA_1 [Group G] [IsCyclic G] (N : Subgroup G) [Pow (G ⧸ N) ℤ] : IsCyclic (G ⧸ N) := by sorry",
6 | "version": "0.1",
7 | "initialize": [
8 | {
9 | "func": "import",
10 | "libs": ["Mathlib"]
11 | },
12 | {
13 | "func": "query",
14 | "expr": "theorem AA_1 [Group G] [IsCyclic G] (N : Subgroup G) [Pow (G ⧸ N) ℤ] : IsCyclic (G ⧸ N) := by sorry"
15 | },
16 | {
17 | "func": "launch",
18 | "wait": 10,
19 | "command": "code /home/user/sci /home/user/sci/Sci/Basic.lean",
20 | "shell": true
21 | }
22 | ],
23 | "evaluate": [
24 | {
25 | "type": "placeholder"
26 | }
27 | ]
28 | }
29 |
--------------------------------------------------------------------------------
/tasks/VM/Lean/B-06.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "Lean",
3 | "sort": "VM",
4 | "steps": 15,
5 | "instruction": "theorem AA_2 [Ring R] (N : Ideal R) [DivisionRing (R ⧸ N)] (a : R) : (∃ t : N, t = a * a) → (∃ t' : N, t' = a) := by sorry",
6 | "version": "0.1",
7 | "initialize": [
8 | {
9 | "func": "import",
10 | "libs": ["Mathlib"]
11 | },
12 | {
13 | "func": "query",
14 | "expr": "theorem AA_2 [Ring R] (N : Ideal R) [DivisionRing (R ⧸ N)] (a : R) : (∃ t : N, t = a * a) → (∃ t' : N, t' = a) := by sorry"
15 | },
16 | {
17 | "func": "launch",
18 | "wait": 10,
19 | "command": "code /home/user/sci /home/user/sci/Sci/Basic.lean",
20 | "shell": true
21 | }
22 | ],
23 | "evaluate": [
24 | {
25 | "type": "placeholder"
26 | }
27 | ]
28 | }
29 |
--------------------------------------------------------------------------------
/tasks/VM/Lean/B-07.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "Lean",
3 | "sort": "VM",
4 | "steps": 15,
5 | "instruction": "theorem AA_3 {K E F : Set α} [Field K] [Field E] [Field F] [Algebra F E] [Algebra F K] (h₁ : F ⊆ E) (h₂ : E ⊆ K) (h₃ : Normal F K) : Nonempty (Algebra E K) ∧ ([Algebra E K] → (Normal E K)) := by sorry",
6 | "version": "0.1",
7 | "initialize": [
8 | {
9 | "func": "import",
10 | "libs": ["Mathlib"]
11 | },
12 | {
13 | "func": "query",
14 | "expr": "theorem AA_3 {K E F : Set α} [Field K] [Field E] [Field F] [Algebra F E] [Algebra F K] (h₁ : F ⊆ E) (h₂ : E ⊆ K) (h₃ : Normal F K) : Nonempty (Algebra E K) ∧ ([Algebra E K] → (Normal E K)) := by sorry"
15 | },
16 | {
17 | "func": "launch",
18 | "wait": 10,
19 | "command": "code /home/user/sci /home/user/sci/Sci/Basic.lean",
20 | "shell": true
21 | }
22 | ],
23 | "evaluate": [
24 | {
25 | "type": "placeholder"
26 | }
27 | ]
28 | }
29 |
--------------------------------------------------------------------------------
/tasks/VM/Lean/C-01.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "Lean",
3 | "sort": "VM",
4 | "steps": 15,
5 | "instruction": "theorem TP_1 [TopologicalSpace X] [TopologicalSpace Y] (h₁ : X ≃ₜ Y) (h₂ : MetrizableSpace X) : MetrizableSpace Y := by sorry",
6 | "version": "0.1",
7 | "initialize": [
8 | {
9 | "func": "import",
10 | "libs": ["Mathlib"]
11 | },
12 | {
13 | "func": "open",
14 | "libs": ["TopologicalSpace"]
15 | },
16 | {
17 | "func": "query",
18 | "expr": "theorem TP_1 [TopologicalSpace X] [TopologicalSpace Y] (h₁ : X ≃ₜ Y) (h₂ : MetrizableSpace X) : MetrizableSpace Y := by sorry"
19 | },
20 | {
21 | "func": "launch",
22 | "wait": 10,
23 | "command": "code /home/user/sci /home/user/sci/Sci/Basic.lean",
24 | "shell": true
25 | }
26 | ],
27 | "evaluate": [
28 | {
29 | "type": "placeholder"
30 | }
31 | ]
32 | }
33 |
--------------------------------------------------------------------------------
/tasks/VM/Lean/C-02.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "Lean",
3 | "sort": "VM",
4 | "steps": 15,
5 | "instruction": "theorem TP_2 [TopologicalSpace X] (A B : Set X) (h : (derivedSet A) ⊆ B ∧ B ⊆ A) : IsClosed B := by sorry",
6 | "version": "0.1",
7 | "initialize": [
8 | {
9 | "func": "import",
10 | "libs": ["Mathlib"]
11 | },
12 | {
13 | "func": "query",
14 | "expr": "theorem TP_2 [TopologicalSpace X] (A B : Set X) (h : (derivedSet A) ⊆ B ∧ B ⊆ A) : IsClosed B := by sorry"
15 | },
16 | {
17 | "func": "launch",
18 | "wait": 10,
19 | "command": "code /home/user/sci /home/user/sci/Sci/Basic.lean",
20 | "shell": true
21 | }
22 | ],
23 | "evaluate": [
24 | {
25 | "type": "placeholder"
26 | }
27 | ]
28 | }
29 |
--------------------------------------------------------------------------------
/tasks/VM/Lean/C-03.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "Lean",
3 | "sort": "VM",
4 | "steps": 15,
5 | "instruction": "theorem TP_3 [TopologicalSpace X] [TopologicalSpace Y] (f : X → Y) (Z : Set X) (h₁ : Continuous f) (h₂ : IsConnected Z) : IsConnected {y : Y | ∃ z ∈ Z, f z = y} := by sorry",
6 | "version": "0.1",
7 | "initialize": [
8 | {
9 | "func": "import",
10 | "libs": ["Mathlib"]
11 | },
12 | {
13 | "func": "query",
14 | "expr": "theorem TP_3 [TopologicalSpace X] [TopologicalSpace Y] (f : X → Y) (Z : Set X) (h₁ : Continuous f) (h₂ : IsConnected Z) : IsConnected {y : Y | ∃ z ∈ Z, f z = y} := by sorry"
15 | },
16 | {
17 | "func": "launch",
18 | "wait": 10,
19 | "command": "code /home/user/sci /home/user/sci/Sci/Basic.lean",
20 | "shell": true
21 | }
22 | ],
23 | "evaluate": [
24 | {
25 | "type": "placeholder"
26 | }
27 | ]
28 | }
29 |
--------------------------------------------------------------------------------
/tasks/VM/Lean/C-04.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "Lean",
3 | "sort": "VM",
4 | "steps": 15,
5 | "instruction": "theorem TP_4 [𝒯₁ : TopologicalSpace X] [𝒯₂ : TopologicalSpace X] (h : ∀ x : Set X, 𝒯₁.IsOpen x → 𝒯₂.IsOpen x) : (@T0Space X 𝒯₁ → @T0Space X 𝒯₂) ∧ (@T1Space X 𝒯₁ → @T1Space X 𝒯₂) := by sorry",
6 | "version": "0.1",
7 | "initialize": [
8 | {
9 | "func": "import",
10 | "libs": ["Mathlib"]
11 | },
12 | {
13 | "func": "query",
14 | "expr": "theorem TP_4 [𝒯₁ : TopologicalSpace X] [𝒯₂ : TopologicalSpace X] (h : ∀ x : Set X, 𝒯₁.IsOpen x → 𝒯₂.IsOpen x) : (@T0Space X 𝒯₁ → @T0Space X 𝒯₂) ∧ (@T1Space X 𝒯₁ → @T1Space X 𝒯₂) := by sorry"
15 | },
16 | {
17 | "func": "launch",
18 | "wait": 10,
19 | "command": "code /home/user/sci /home/user/sci/Sci/Basic.lean",
20 | "shell": true
21 | }
22 | ],
23 | "evaluate": [
24 | {
25 | "type": "placeholder"
26 | }
27 | ]
28 | }
29 |
--------------------------------------------------------------------------------
/tasks/VM/Lean/C-05.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "Lean",
3 | "sort": "VM",
4 | "steps": 15,
5 | "instruction": "theorem TP_5 [TopologicalSpace X] [RegularSpace X] (A Y : Set X) (h₁ : IsCompact A) (h₂ : A ⊆ Y ∧ Y ⊆ Aᶜ) : IsCompact Y := by sorry",
6 | "version": "0.1",
7 | "initialize": [
8 | {
9 | "func": "import",
10 | "libs": ["Mathlib"]
11 | },
12 | {
13 | "func": "query",
14 | "expr": "theorem TP_5 [TopologicalSpace X] [RegularSpace X] (A Y : Set X) (h₁ : IsCompact A) (h₂ : A ⊆ Y ∧ Y ⊆ Aᶜ) : IsCompact Y := by sorry"
15 | },
16 | {
17 | "func": "launch",
18 | "wait": 10,
19 | "command": "code /home/user/sci /home/user/sci/Sci/Basic.lean",
20 | "shell": true
21 | }
22 | ],
23 | "evaluate": [
24 | {
25 | "type": "placeholder"
26 | }
27 | ]
28 | }
29 |
--------------------------------------------------------------------------------
/tasks/VM/Lean/D-01.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "Lean",
3 | "sort": "VM",
4 | "steps": 15,
5 | "instruction": "theorem AP_1 (A : ℝ) (f : ℝ → ℝ) (h₁ : A > 0) (h₂ : Tendsto f atBot (𝓝 A)) : ∃ X : ℝ, X > 0 ∧ (∀ x < -X, A < 2 * f x ∧ 2 * f x < 3 * A) := by sorry",
6 | "version": "0.1",
7 | "initialize": [
8 | {
9 | "func": "import",
10 | "libs": ["Mathlib"]
11 | },
12 | {
13 | "func": "open",
14 | "libs": ["Filter", "Topology"]
15 | },
16 | {
17 | "func": "query",
18 | "expr": "theorem AP_1 (A : ℝ) (f : ℝ → ℝ) (h₁ : A > 0) (h₂ : Tendsto f atBot (𝓝 A)) : ∃ X : ℝ, X > 0 ∧ (∀ x < -X, A < 2 * f x ∧ 2 * f x < 3 * A) := by sorry"
19 | },
20 | {
21 | "func": "launch",
22 | "wait": 10,
23 | "command": "code /home/user/sci /home/user/sci/Sci/Basic.lean",
24 | "shell": true
25 | }
26 | ],
27 | "evaluate": [
28 | {
29 | "type": "placeholder"
30 | }
31 | ]
32 | }
33 |
--------------------------------------------------------------------------------
/tasks/VM/Lean/D-02.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "Lean",
3 | "sort": "VM",
4 | "steps": 15,
5 | "instruction": "theorem AP_2 (S : Set ℝ) (f f' : ℝ → ℝ) (h₁ : ∀ x ∈ S, HasDerivWithinAt f (f' x) S x) (h₂ : ∃ M : ℝ, ∀ x ∈ S, |f' x| ≤ M) : UniformContinuousOn f S := by sorry",
6 | "version": "0.1",
7 | "initialize": [
8 | {
9 | "func": "import",
10 | "libs": ["Mathlib"]
11 | },
12 | {
13 | "func": "query",
14 | "expr": "theorem AP_2 (S : Set ℝ) (f f' : ℝ → ℝ) (h₁ : ∀ x ∈ S, HasDerivWithinAt f (f' x) S x) (h₂ : ∃ M : ℝ, ∀ x ∈ S, |f' x| ≤ M) : UniformContinuousOn f S := by sorry"
15 | },
16 | {
17 | "func": "launch",
18 | "wait": 10,
19 | "command": "code /home/user/sci /home/user/sci/Sci/Basic.lean",
20 | "shell": true
21 | }
22 | ],
23 | "evaluate": [
24 | {
25 | "type": "placeholder"
26 | }
27 | ]
28 | }
29 |
--------------------------------------------------------------------------------
/tasks/VM/Lean/D-03.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "Lean",
3 | "sort": "VM",
4 | "steps": 15,
5 | "instruction": "theorem AP_3 {a b : ℝ} (f : ℝ → ℝ) (h₁ : ContinuousOn f (Icc a b)) (h₂ : (∫ x in a..b, (f x) ^ 2) = 0) : ∀ x ∈ Icc a b, f x = 0 := by sorry",
6 | "version": "0.1",
7 | "initialize": [
8 | {
9 | "func": "import",
10 | "libs": ["Mathlib"]
11 | },
12 | {
13 | "func": "open",
14 | "libs": ["Set"]
15 | },
16 | {
17 | "func": "query",
18 | "expr": "theorem AP_3 {a b : ℝ} (f : ℝ → ℝ) (h₁ : ContinuousOn f (Icc a b)) (h₂ : (∫ x in a..b, (f x) ^ 2) = 0) : ∀ x ∈ Icc a b, f x = 0 := by sorry"
19 | },
20 | {
21 | "func": "launch",
22 | "wait": 10,
23 | "command": "code /home/user/sci /home/user/sci/Sci/Basic.lean",
24 | "shell": true
25 | }
26 | ],
27 | "evaluate": [
28 | {
29 | "type": "placeholder"
30 | }
31 | ]
32 | }
33 |
--------------------------------------------------------------------------------
/tasks/VM/Lean/D-04.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "Lean",
3 | "sort": "VM",
4 | "steps": 15,
5 | "instruction": "theorem MT_1 (𝒞 : Set (Set Ω)) (h : #𝒞 = ℵ₀) : #(generateSetAlgebra 𝒞) = ℵ₀ := by sorry",
6 | "version": "0.1",
7 | "initialize": [
8 | {
9 | "func": "import",
10 | "libs": ["Mathlib"]
11 | },
12 | {
13 | "func": "open",
14 | "libs": ["Cardinal", "MeasureTheory"]
15 | },
16 | {
17 | "func": "query",
18 | "expr": "theorem MT_1 (𝒞 : Set (Set Ω)) (h : #𝒞 = ℵ₀) : #(generateSetAlgebra 𝒞) = ℵ₀ := by sorry"
19 | },
20 | {
21 | "func": "launch",
22 | "wait": 10,
23 | "command": "code /home/user/sci /home/user/sci/Sci/Basic.lean",
24 | "shell": true
25 | }
26 | ],
27 | "evaluate": [
28 | {
29 | "type": "placeholder"
30 | }
31 | ]
32 | }
33 |
--------------------------------------------------------------------------------
/tasks/VM/Lean/D-05.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "Lean",
3 | "sort": "VM",
4 | "steps": 15,
5 | "instruction": "theorem MT_2 [MeasurableSpace Ω] (μ_ : ℕ → Measure Ω) (f : Set Ω → ℝ≥0∞) (h₁ : ∀ n : ℕ, ∀ A : Set Ω, (μ_ n).measureOf A ≤ (μ_ (n + 1)).measureOf A) (h₂ : ∀ A : Set Ω, Tendsto (fun n => (μ_ n).measureOf A) atTop (𝓝 (f A))) : ∃ μ : Measure Ω, μ.measureOf = f := by sorry",
6 | "version": "0.1",
7 | "initialize": [
8 | {
9 | "func": "import",
10 | "libs": ["Mathlib"]
11 | },
12 | {
13 | "func": "open",
14 | "libs": ["MeasureTheory", "ENNReal", "Filter", "Topology"]
15 | },
16 | {
17 | "func": "query",
18 | "expr": "theorem MT_2 [MeasurableSpace Ω] (μ_ : ℕ → Measure Ω) (f : Set Ω → ℝ≥0∞) (h₁ : ∀ n : ℕ, ∀ A : Set Ω, (μ_ n).measureOf A ≤ (μ_ (n + 1)).measureOf A) (h₂ : ∀ A : Set Ω, Tendsto (fun n => (μ_ n).measureOf A) atTop (𝓝 (f A))) : ∃ μ : Measure Ω, μ.measureOf = f := by sorry"
19 | },
20 | {
21 | "func": "launch",
22 | "wait": 10,
23 | "command": "code /home/user/sci /home/user/sci/Sci/Basic.lean",
24 | "shell": true
25 | }
26 | ],
27 | "evaluate": [
28 | {
29 | "type": "placeholder"
30 | }
31 | ]
32 | }
33 |
--------------------------------------------------------------------------------
/tasks/VM/Lean/D-06.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "Lean",
3 | "sort": "VM",
4 | "steps": 15,
5 | "instruction": "theorem MT_3 {a b : ℝ} {μ : Measure <| Icc a b} (f_ : ℕ → Icc a b → ℝ) (f : Icc a b → ℝ) (g : ℝ → ℝ) (h₁ : TendstoInMeasure μ f_ atTop f) (h₂ : ∃ M : ℝ, ∀ x : Icc a b, |f x| < M) (h₃ : ContinuousOn g univ) : TendstoInMeasure μ (fun n => g ∘ (f_ n)) atTop (g ∘ f) := by sorry",
6 | "version": "0.1",
7 | "initialize": [
8 | {
9 | "func": "import",
10 | "libs": ["Mathlib"]
11 | },
12 | {
13 | "func": "open",
14 | "libs": ["Set", "MeasureTheory", "Filter"]
15 | },
16 | {
17 | "func": "query",
18 | "expr": "theorem MT_3 {a b : ℝ} {μ : Measure <| Icc a b} (f_ : ℕ → Icc a b → ℝ) (f : Icc a b → ℝ) (g : ℝ → ℝ) (h₁ : TendstoInMeasure μ f_ atTop f) (h₂ : ∃ M : ℝ, ∀ x : Icc a b, |f x| < M) (h₃ : ContinuousOn g univ) : TendstoInMeasure μ (fun n => g ∘ (f_ n)) atTop (g ∘ f) := by sorry"
19 | },
20 | {
21 | "func": "launch",
22 | "wait": 10,
23 | "command": "code /home/user/sci /home/user/sci/Sci/Basic.lean",
24 | "shell": true
25 | }
26 | ],
27 | "evaluate": [
28 | {
29 | "type": "placeholder"
30 | }
31 | ]
32 | }
33 |
--------------------------------------------------------------------------------
/tasks/VM/Lean/D-07.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "Lean",
3 | "sort": "VM",
4 | "steps": 15,
5 | "instruction": "theorem MT_4 [MeasureSpace Ω] [IsProbabilityMeasure (ℙ : Measure Ω)] (X : Ω → ℝ) {p : ℕ} {X : Ω → ℝ} (h₁ : p > 0) (h₂ : Integrable X) (h₃ : ∃ M : ℝ, 𝔼[fun ω => |X ω| ^ p] = M) : Tendsto (fun (x : ℝ) => (x ^ p) * (ℙ {ω : Ω | |X ω| > x}).toReal) atTop (𝓝 0) := by sorry",
6 | "version": "0.1",
7 | "initialize": [
8 | {
9 | "func": "import",
10 | "libs": ["Mathlib"]
11 | },
12 | {
13 | "func": "open",
14 | "libs": ["MeasureTheory", "ProbabilityTheory", "Filter", "Topology"]
15 | },
16 | {
17 | "func": "query",
18 | "expr": "theorem MT_4 [MeasureSpace Ω] [IsProbabilityMeasure (ℙ : Measure Ω)] (X : Ω → ℝ) {p : ℕ} {X : Ω → ℝ} (h₁ : p > 0) (h₂ : Integrable X) (h₃ : ∃ M : ℝ, 𝔼[fun ω => |X ω| ^ p] = M) : Tendsto (fun (x : ℝ) => (x ^ p) * (ℙ {ω : Ω | |X ω| > x}).toReal) atTop (𝓝 0) := by sorry"
19 | },
20 | {
21 | "func": "launch",
22 | "wait": 10,
23 | "command": "code /home/user/sci /home/user/sci/Sci/Basic.lean",
24 | "shell": true
25 | }
26 | ],
27 | "evaluate": [
28 | {
29 | "type": "placeholder"
30 | }
31 | ]
32 | }
33 |
--------------------------------------------------------------------------------
/tasks/VM/Lean/E-01.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "Lean",
3 | "sort": "VM",
4 | "steps": 20,
5 | "instruction": "def OP_1 (n : ℤ) : Decidable (∃ a b c d : ℤ, n = a ^ 3 + b ^ 3 + c ^ 3 + d ^ 3) := by sorry",
6 | "version": "0.1",
7 | "initialize": [
8 | {
9 | "func": "import",
10 | "libs": ["Mathlib"]
11 | },
12 | {
13 | "func": "query",
14 | "expr": "def OP_1 (n : ℤ) : Decidable (∃ a b c d : ℤ, n = a ^ 3 + b ^ 3 + c ^ 3 + d ^ 3) := by sorry"
15 | },
16 | {
17 | "func": "launch",
18 | "wait": 10,
19 | "command": "code /home/user/sci /home/user/sci/Sci/Basic.lean",
20 | "shell": true
21 | }
22 | ],
23 | "evaluate": [
24 | {
25 | "type": "placeholder"
26 | }
27 | ]
28 | }
29 |
--------------------------------------------------------------------------------
/tasks/VM/Lean/E-02.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "Lean",
3 | "sort": "VM",
4 | "steps": 20,
5 | "instruction": "def OP_2 (I : Set (Set α)) (h : ideal I) : Decidable (∃ A ⊆ I, (inter_family A) ∧ (∀ B ⊆ I, (inter_family B) → (#B ≤ #A)) ∧ (star A)) := by sorry",
6 | "version": "0.1",
7 | "initialize": [
8 | {
9 | "func": "import",
10 | "libs": ["Mathlib"]
11 | },
12 | {
13 | "func": "open",
14 | "libs": ["Cardinal"]
15 | },
16 | {
17 | "func": "def",
18 | "expr": "def ideal (I : Set (Set α)) : Prop := ∃ F : Filter α, I = {i : Set α | ∃ f ∈ F.sets, i = fᶜ }"
19 | },
20 | {
21 | "func": "def",
22 | "expr": "def inter_family (A : Set (Set α)) : Prop := ∀ X ∈ A, ∀ Y ∈ A, (X ∩ Y) ≠ ∅"
23 | },
24 | {
25 | "func": "def",
26 | "expr": "def star (A : Set (Set α)) : Prop := (⋂ X ∈ A, X) ≠ ∅"
27 | },
28 | {
29 | "func": "query",
30 | "expr": "def OP_2 (I : Set (Set α)) (h : ideal I) : Decidable (∃ A ⊆ I, (inter_family A) ∧ (∀ B ⊆ I, (inter_family B) → (#B ≤ #A)) ∧ (star A)) := by sorry"
31 | },
32 | {
33 | "func": "launch",
34 | "wait": 10,
35 | "command": "code /home/user/sci /home/user/sci/Sci/Basic.lean",
36 | "shell": true
37 | }
38 | ],
39 | "evaluate": [
40 | {
41 | "type": "placeholder"
42 | }
43 | ]
44 | }
45 |
--------------------------------------------------------------------------------
/tasks/VM/TeXstudio/C-06.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "TeXstudio",
3 | "sort": "VM",
4 | "steps": 5,
5 | "instruction": "Modify the formula of the document in TeXstudio till it can be successfully compiled.",
6 | "version": "0.1",
7 | "snapshot": "sci_bench",
8 | "initialize": [
9 | {
10 | "func": "touch",
11 | "text": "\\documentclass[11pt,a4paper]{article}\n\\usepackage[utf8]{inputenc}\n\\usepackage[english]{babel}\n\\usepackage{amsmath}\n\n\\begin{document}\n\n\\noindent {\\bfseries\\LARGE Definition of Ackermann Function \\par}\n\\bigskip\\noindent\n\n$$\n\\begin{aligned}\n A(Y_1, [X, 0], Y_2) & = A(Y_1, Y_2) \\\\\n A(Y_1, [Z, X], Y_2) & = A(Y_1, [X], Y_2) \\\\\n A([a]) & = a+1 \\\\\n A(Y, [1, b+1]) & = A(Y, [1, b], [1]) \\\\\n A(Y, [1, b+1], [a+1]) & = A( Y, [1, b], [A(Y, [1, b+1], [a])] ) \\\\\n A(Y, [X, c+1, b+1], [a]) & = A(Y, [X, c+1, b], [X, c, a], [a]), X \\neq Z \\or c \\neq 0 \\\\\n A(Y, [X, c+1, 0, Z, b+1], [a]) & = A(Y, [X, c+1, 0, Z, b], [X, c, a, Z, a], [a])\n\\end{aligned}\n$$\n\n\\end{document}\n",
12 | "path": "/home/user/atelier/main.tex"
13 | },
14 | {
15 | "func": "launch",
16 | "wait": 2.5,
17 | "command": "texstudio /home/user/atelier/main.tex",
18 | "shell": true
19 | }
20 | ],
21 | "evaluate": [
22 | {
23 | "type": "compile",
24 | "path": "/home/user/atelier",
25 | "file": "main"
26 | }
27 | ],
28 | "ans": "\\or -> \\vee"
29 | }
--------------------------------------------------------------------------------
/tasks/VM/TeXstudio/D-01.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "TeXstudio",
3 | "sort": "VM",
4 | "steps": 5,
5 | "instruction": "Read the document and submit your answer: the value of BB(4).",
6 | "version": "0.1",
7 | "snapshot": "sci_bench",
8 | "initialize": [
9 | {
10 | "func": "touch",
11 | "text": "\\documentclass[11pt,a4paper]{article}\n\\usepackage[utf8]{inputenc}\n\\usepackage[english]{babel}\n\n\\begin{document}\n\n\\noindent {\\bfseries\\LARGE Title \\par}\n\\bigskip\\noindent\n\nThe Busy Beaver function, BB($n$), captures the maximum number of steps an n-state Turing machine can make on a blank tape before halting, provided it halts. It's famous for growing faster than any computable function, making it non-computable and tightly linked to the limits of what machines can decide.\n\nFor a long time, the exact values of BB were only known for small n. It was well established that BB(4) = 13, but BB(5) remained a mystery for decades. Recent research has now shown that BB(5) = 4098, a huge leap that highlights just how explosively the function grows. This result not only advances our understanding of Turing machines but also deepens the connections between computation, logic, and undecidability.\n\n\\end{document}\n",
12 | "path": "/home/user/atelier/main.tex"
13 | },
14 | {
15 | "func": "launch",
16 | "wait": 2.5,
17 | "command": "texstudio /home/user/atelier/main.tex",
18 | "shell": true
19 | }
20 | ],
21 | "evaluate": [
22 | {
23 | "type": "stop",
24 | "value": "ANS",
25 | "args": ["13"]
26 | }
27 | ],
28 | "ans": "ANS 13"
29 | }
--------------------------------------------------------------------------------
/tasks/VM/TeXstudio/D-02.json:
--------------------------------------------------------------------------------
1 | {
2 | "type": "TeXstudio",
3 | "sort": "VM",
4 | "steps": 5,
5 | "instruction": "Read the document and submit your answer: the value of B(5).",
6 | "version": "0.1",
7 | "snapshot": "sci_bench",
8 | "initialize": [
9 | {
10 | "func": "touch",
11 | "text": "\\documentclass[11pt,a4paper]{article}\n\\usepackage[utf8]{inputenc}\n\\usepackage[english]{babel}\n\n\\begin{document}\n\nIn combinatorial mathematics, the Bell numbers count the possible partitions of a set. These numbers have been studied by mathematicians since the 19th century, and their roots go back to medieval Japan. In an example of Stigler's law of eponymy, they are named after Eric Temple Bell, who wrote about them in the 1930s.\n\n\\begin{figure}[h]\n \\vspace{-1ex}\n \\centering\n \\renewcommand{\\arraystretch}{1.8}\n \\begin{tabular}{|c|c|c|c|c|c|c|}\n \\hline\n $B(0)$\n & $B(1)$\n & $B(2)$\n & $B(3)$\n & $B(4)$\n & $B(5)$\n & $B(6)$ \\\\\n \\hline\n $1$\n & $1$\n & $2$\n & $5$\n & $15$\n & $52$\n & $203$ \\\\\n \\hline\n \\end{tabular}\n \\vspace{1ex}\n \\caption{Instances of the Bell Numbers}\n\\end{figure}\n\n\\end{document}\n",
12 | "path": "/home/user/atelier/main.tex"
13 | },
14 | {
15 | "func": "launch",
16 | "wait": 2.5,
17 | "command": "texstudio /home/user/atelier/main.tex",
18 | "shell": true
19 | }
20 | ],
21 | "evaluate": [
22 | {
23 | "type": "stop",
24 | "value": "ANS",
25 | "args": ["52"]
26 | }
27 | ],
28 | "ans": "ANS 52"
29 | }
--------------------------------------------------------------------------------
/vm_config/pack/DEBIAN/control:
--------------------------------------------------------------------------------
1 | Package: sci-bench-cache
2 | Version: 0.1
3 | Maintainer: Ichinoe
4 | Architecture: all
5 | Description: Cache files for SciBench
6 |
--------------------------------------------------------------------------------
/vm_config/pack/home/user/Downloads/ChimeraX/AlphaFold/alphafold_database.json:
--------------------------------------------------------------------------------
1 | {
2 | "database_url": "https://alphafold.ebi.ac.uk/files/AF-{uniprot_id}-F1-model_v{version}.cif",
3 | "database_version": "4",
4 | "update_interval": 1.0,
5 | "update_url": "https://www.rbvi.ucsf.edu/chimerax/data/status/alphafold_database3.json"
6 | "comment": "This file fetched by ChimeraX to determine the current version of the AlphaFold database. It is used by ChimeraX builds newer than August 29, 2022. Older builds such as ChimeraX 1.4 use a different file alphafold_database.json because they are only compatible with database version 2 because EBI changed the format of the predicted aligned error files in version 3."
7 | }
8 |
--------------------------------------------------------------------------------
/vm_config/reset.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 |
3 | CONN_NAME=$(nmcli -t -f NAME,TYPE connection show | grep ethernet | cut -d: -f1)
4 |
5 | if [ -z "$CONN_NAME" ]; then
6 | exit 1
7 | fi
8 |
9 | nmcli connection down "$CONN_NAME"
10 | sleep 2
11 | nmcli connection up "$CONN_NAME"
12 |
--------------------------------------------------------------------------------
/vm_config/service.conf:
--------------------------------------------------------------------------------
1 | [Unit]
2 | Description=OSWorld Service
3 | StartLimitIntervalSec=60
4 | StartLimitBurst=4
5 | After=network.target auditd.service
6 |
7 | [Service]
8 | ExecStart=/usr/bin/python /home/user/server/main.py
9 | WorkingDirectory=/home/user
10 | Environment="DISPLAY=:0"
11 | Restart=on-failure
12 | RestartSec=5s
13 |
14 | [Install]
15 | WantedBy=default.target
16 |
--------------------------------------------------------------------------------