module Debate.Arguments.Philosophy.DairyCowRape exposing (..)

import Debate.Types exposing (..)


argumentDairyCowRape : Argument
argumentDairyCowRape =
    { argumentTitle = "Argument for Dairy Cattle Being Raped"
    , propositionTitle = "A bull mating with a cow qualifies as rape."
    , propositionReductio = ""
    , propositionSummary = "Summary"
    , proofLink  = "https://www.umsu.de/trees/#(~6x~6y(Px~4(Qxy~1~3Ryx))),(Qae),(~3Rea)|=(Pa)"
    , definitionTable =
        [ { definiendum = "P(x)"
          , definiens = "(x) qualifies as rape"
          }
        , { definiendum = "Q(x,y)"
          , definiens = "(x)  involves sexual contact with (y)"
          }
        , { definiendum = "R(y,x)"
          , definiens = "(y) renders informed consent for (x)"
          }
        , { definiendum = "x"
          , definiens = "an action"
          }
        , { definiendum = "y"
          , definiens = "an involved party"
          }
        , { definiendum = "a"
          , definiens = "bulls mating with cows"
          }
            , { definiendum = "e"
          , definiens = "a cow"
          }
        ]
    , argumentFormalization =
        [ { premises =
                [ { premise = "An action qualifies as rape if, and only if, the action involves sexual contact with an involved party and the involved party does not render informed consent for the action."
                  , notation = "(∀x∀y(Px↔(Qxy∧¬Ryx)))"
                  }
                , { premise = "A bull mating with a cow involves sexual contact with a cow."
                  , notation = "(Qae)"
                  }
                , { premise = "A cow does not render informed consent to a bull mating with a cow."
                  , notation = "(¬Rea)"
                  }
                ]
          , conclusion = "Therefore, a bull mating with a cow qualifies as rape."
          , conclusionNotation = "(∴Pa)"
          }
        ]
    }