diff --git a/.github/workflows/pretext-cli.yml b/.github/workflows/pretext-cli.yml new file mode 100644 index 000000000..22b8a3c3a --- /dev/null +++ b/.github/workflows/pretext-cli.yml @@ -0,0 +1,93 @@ +# +# (delete the above line to manage this file manually) + +name: PreTeXt-CLI Actions +on: + # Runs on pull requests + pull_request: + branches: ["*"] + # Runs on pushes to main + push: + branches: ["main"] + # Runs on demand + workflow_dispatch: + +jobs: + build: + runs-on: ubuntu-latest + container: oscarlevin/pretext:full + + steps: + - name: Checkout source + uses: actions/checkout@v4 + + - name: install deps + run: pip install -r requirements.txt + + - name: build deploy targets + run: pretext build --deploys + - name: stage deployment + run: pretext deploy --stage-only + + - name: Bundle output/stage as artifact + uses: actions/upload-artifact@v4 + with: + name: deploy + path: output/stage + + deploy-cloudflare: + runs-on: ubuntu-latest + needs: build + if: vars.CLOUDFLARE_PROJECT_NAME != '' + permissions: + contents: read + deployments: write + + steps: + - name: Download artifact + uses: actions/download-artifact@v4 + with: + name: deploy + path: deploy + - name: Create 404.html + run: echo "404 page not found" >> deploy/404.html + - name: Publish to Cloudflare + uses: cloudflare/pages-action@v1 + with: + apiToken: ${{ secrets.CLOUDFLARE_API_TOKEN }} + accountId: ${{ secrets.CLOUDFLARE_ACCOUNT_ID }} + projectName: ${{ vars.CLOUDFLARE_PROJECT_NAME }} + gitHubToken: ${{ secrets.GITHUB_TOKEN }} + branch: ${{ github.head_ref || github.ref_name }} + directory: deploy + + deploy-ghpages: + runs-on: ubuntu-latest + needs: build + if: vars.PTX_ENABLE_DEPLOY_GHPAGES == 'yes' && github.ref == format('refs/heads/{0}', github.event.repository.default_branch) + permissions: + contents: read + pages: write + id-token: write + concurrency: + group: "page" + cancel-in-progress: false + environment: + name: github-pages + url: ${{ steps.deployment.outputs.page_url }} + steps: + - name: Download website artifact + uses: actions/download-artifact@v4 + with: + name: deploy + path: deploy + - name: Setup GitHub Pages + id: check + uses: actions/configure-pages@v4 + - name: Upload artifact + uses: actions/upload-pages-artifact@v3 + with: + path: deploy + - name: Deploy to Github Pages + id: deployment + uses: actions/deploy-pages@v4 diff --git a/generated-assets/webwork/webwork-representations.xml b/generated-assets/webwork/webwork-representations.xml index c43d8928b..c213f7d55 100644 --- a/generated-assets/webwork/webwork-representations.xml +++ b/generated-assets/webwork/webwork-representations.xml @@ -358,7 +358,7 @@ and which are equivalent to the converse of the implication?

Suppose P(x,y) is some binary predicate defined on a very small domain of discourse: just the integers 1, 2, 3, and 4. For each of the 16 pairs of these numbers, P(x,y) is either true or false, according to the following table (x values are rows, y values are columns).

- + @@ -798,11 +798,11 @@ and then 8 that include 3 and not 1 or 2, and so on. So you can find 55 by summ

- + {21 \choose 6} - \left[{7 \choose 1}{18 \choose 6} - {7 \choose 2}{15 \cho

{18 \choose 4} - \left[ {5 \choose 1}{11 \choose 4} - {5 \choose 2}{4 \choose 4}\right]\text{.}

- +

b_n = (n+3)n\text{.}

- +

Make a truth table for the statement (P \wedge Q) \rightarrow (P \vee Q)\text{.}

- + @@ -4850,7 +4848,7 @@ ENDDOCUMENT();

If you think about what this statement is saying, it makes sense that it is a tautology (that it is true in every case). The complete truth table is:

- + @@ -4901,7 +4899,7 @@ ENDDOCUMENT();

Make a truth table for the statement \neg Q \vee (Q \rightarrow P))

- + @@ -5023,7 +5021,7 @@ ENDDOCUMENT();

The complete truth table is:

- + @@ -5075,12 +5073,13 @@ ENDDOCUMENT();

Make a truth table for the statement P \vee (R \rightarrow \neg Q)

- + + P Q @@ -5276,12 +5275,13 @@ ENDDOCUMENT();

The complete truth table is:

- + + P Q @@ -5364,7 +5364,7 @@ ENDDOCUMENT();

Determine whether the statements P \rightarrow (Q \vee R) and (P \rightarrow Q) \vee (P\rightarrow R) are logically equivalent.

First, make a truth table for both of the statements. (You might want to complete the truth table on paper so you can make columns for intermediate steps; just record the final columns here.)

- + @@ -5534,7 +5534,7 @@ ENDDOCUMENT();

The complete truth table is:

- + @@ -5613,7 +5613,7 @@ ENDDOCUMENT();

Determine if the following is a valid deduction rule:

- + @@ -5630,7 +5630,7 @@ ENDDOCUMENT();

First, make a truth table for the relevant statements. (You might want to complete the truth table on paper so you can make columns for intermediate steps; just record the final columns here.)

- + @@ -5752,7 +5752,7 @@ ENDDOCUMENT();

The complete truth table is:

- + @@ -5803,7 +5803,7 @@ ENDDOCUMENT();

Determine if the following is a valid deduction rule:

- + @@ -5820,7 +5820,7 @@ ENDDOCUMENT();

First, make a truth table for the relevant statements. (You might want to complete the truth table on paper so you can make columns for intermediate steps; just record the final columns here.)

- + @@ -5990,7 +5990,7 @@ ENDDOCUMENT();

The complete truth table is:

- + @@ -6069,7 +6069,7 @@ ENDDOCUMENT();

Determine if the following is a valid deduction rule:

- + @@ -6086,7 +6086,7 @@ ENDDOCUMENT();

First, make a truth table for the relevant statements. (You might want to complete the truth table on paper so you can make columns for intermediate steps; just record the final columns here.)

- + @@ -6306,7 +6306,7 @@ ENDDOCUMENT();

The complete truth table is:

- + @@ -6395,7 +6395,7 @@ ENDDOCUMENT();

Determine if the following is a valid deduction rule:

- + @@ -6412,7 +6412,7 @@ ENDDOCUMENT();

First, make a truth table for the relevant statements. (You might want to complete the truth table on paper so you can make columns for intermediate steps; just record the final columns here.)

- + @@ -6582,7 +6582,7 @@ ENDDOCUMENT();

The complete truth table is:

- +