# Dockerfile for proof environment and simulation dependencies
FROM ubuntu:22.04

LABEL maintainer="PSBigBig <hello@onestardao.com>"

# Environment variables
ENV DEBIAN_FRONTEND=noninteractive

# Install core dependencies
RUN apt-get update && apt-get install -y \
    git \
    curl \
    unzip \
    python3 \
    python3-pip \
    wget \
    build-essential \
    libffi-dev \
    libssl-dev \
    libgmp-dev \
    libncurses-dev \
    zlib1g-dev

# Install Lean 4
RUN curl -s https://raw.githubusercontent.com/leanprover/elan/master/elan-init.sh | bash -s -- -y
ENV PATH="/root/.elan/bin:${PATH}"

# Install Coq
RUN apt-get install -y opam
RUN opam init -y --disable-sandboxing
RUN opam install -y coq

# Install Python packages
RUN pip3 install --upgrade pip
RUN pip3 install numpy sympy matplotlib

# Copy proof files into container
WORKDIR /workspace
COPY proofs/ ./proofs/
COPY scripts/ ./scripts/

# Set up project structure
WORKDIR /workspace/proofs

# Default entrypoint: run proof verification
ENTRYPOINT ["lean", "Proofs.lean"]
