.PHONY: build run interactive clean test trace demo info build: docker build -t lab9-task4-prolog . run: build docker run --rm -v $(PWD):/app lab9-task4-prolog swipl -g "consult('predicates.pl'), write('=== LAB9 TASK4 PREDICATES ==='), nl, task_info, halt" interactive: build docker run -it --rm -v $(PWD):/app lab9-task4-prolog swipl predicates.pl test: build docker run --rm -v $(PWD):/app lab9-task4-prolog swipl -g "consult('predicates.pl'), consult('tests.pl'), run_tests, halt" trace: build docker run --rm -v $(PWD):/app lab9-task4-prolog swipl -g "consult('predicates.pl'), trace, solve_puzzle(Solution), write(Solution), notrace, halt" info: build docker run --rm -v $(PWD):/app lab9-task4-prolog swipl -g "consult('predicates.pl'), write('=== TASK4 INFO ==='), nl, task_info, show_examples, halt" demo: build docker run --rm -v $(PWD):/app lab9-task4-prolog swipl -g "consult('predicates.pl'), consult('demo.pl'), demo, halt" clean: docker rmi lab9-task4-prolog || true help: @echo "Available commands for lab9 task4:" @echo " make build - Build Docker image" @echo " make run - Run and show basic predicates info" @echo " make info - Show detailed task4 information" @echo " make demo - Run demonstration" @echo " make test - Run tests" @echo " make interactive - Start interactive Prolog session" @echo " make trace - Run solver with tracing" @echo " make clean - Clean Docker images"