truthtable rows

13 views
Skip to first unread message

Sarah Wang

unread,
Jun 3, 2024, 2:24:11 AM6/3/24
to QCA with R
Hi everyone, 

Could I please ask a question related to the truthtable rows?

Say, if I have this output from R: 
      hum_devlp fina_reso private equal confu_long   OUT    n   incl      PRI    cases
 2       0                   0        0          0              1            0         3   0.313   0.183   BUL,RUS,VIE  


The emprical data show that VIE is in the set of the outcome but the other two countries (BUL and RUS) are not. 
Is this truthtable row problematic if I leave it as it is and go ahead with the minimization to get sufficient solutions? Would you call this row a contradictory row so you will deal with it before producing sufficient solutions?  
Or it does not really matter because the OUT is 0, so this row does not impact the minimization process? 


On the same note, if the OUT is 1, among three cases, if two cases are out of the set of the outcome but one case is in the set of the outcome based on the empirical data, this is the contradictory row and I have to deal with it before minimization? Is it right? 

Thank you 
Kind regards
Sarah 

Adrian Dușa

unread,
Jun 3, 2024, 2:51:15 AM6/3/24
to Sarah Wang, QCA with R
Dear Sarah,

There is nothing problematic about a truth table row: it is just a manifestation of the observed empirical evidence.
Regarding contradictions, this is part of the manual for the truth table command, which you can read using:
?truthTable
You will there find the way a contradiction is produced (and therefore a definition of what a contradiction is):
"C" if the row has an inclusion score below ic1 and at least ic0

The nature of a contradiction changed over time. Before the introduction of fuzzy sets, a contradiction occurs whenever the outcome has different values for different cases belonging to the same truth table configuration. In fuzzy sets, it occurs when the row is not consistent enough with the presence of the outcome (ic1) and at the same time the consistency is not low enough (than ic0) to allow coding the output with 0 with certainty.

By default, ic0 is equal to ic1 unless otherwise specified. When it is set lower than ic1, the space between them is where contradictions occur.

I hope this helps,
Adrian

--
You received this message because you are subscribed to the Google Groups "QCA with R" group.
To unsubscribe from this group and stop receiving emails from it, send an email to qcawithr+u...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/qcawithr/e326c589-7cad-4358-a1ad-49306aeae22fn%40googlegroups.com.

Adrian Dușa

unread,
Jun 3, 2024, 12:14:08 PM6/3/24
to Sarah Wang, QCA with R
Hello again Sarah,

Re. your subsequent answer below, you are right and at the same time you are not right.
In principle, you are right that if a truth table row is coded as 0 it is not included in the minimization process (at least, not in the complex solution).
In reality, the CCubes algorithm is a bottom up procedure that does make use of the negative output configurations to obtain the parsimonious solution.

In plain words, you do need to (also) worry about your negative output configurations, because those will *not* be included in the minimization since they are not remainders. So they do have an effect over the parsimonious solution, albeit an indirect one.

Best,
Adrian

PS: the "use-tilde" argument has been deprecated, since the latest version(s) of the QCA package use a tilde by default (in fact they always use a tilde for negations, for compatibility with Ragin's fs/QCA software)

On Mon, Jun 3, 2024 at 4:41 PM Sarah Wang <sarah...@gmail.com> wrote:
Thank you, Adrian, for the explanation. From what I have read using ?truthTable and minimize, 
I think my row       
        hum_devlp fina_reso private equal confu_long   OUT    n   incl      PRI    cases
 2       0                   0        0          0              1                0         3   0.313   0.183   BUL,RUS,VIE  


is NOT included in the minimization process because OUT is 0. So I do not need to worry about this row although VIE is in the set of the outcome but the other two cases (out of set in the outcome). Am I correct? 

This is the code that I used: 
TT2 <- truthTable(mydata2,
                  outcome = "perform",
                  conditions = c("confu_long", "hum_devlp", "fina_reso", "equal", "teach_degree"),
                  incl.cut = 0.8,
                  pri.cut=0.7,
                  n.cut=1,
                  sort.by = "incl",
                  show.cases=TRUE)
TT2

# Produce the conservative solution
sol2 <- minimize(input=TT2,
                          details=TRUE,
                          show.cases=TRUE,
                          use.tilde=TRUE)
sol2

#produce the parsimonious solution
sol_p2 <- minimize(TT2,
                               details = TRUE,
                               include = "?",
                               use.tilde = TRUE,
                               row.dom = TRUE)
sol_p2

Thank you
Kind regards

Sarah
--
Sarah Wang
Reply all
Reply to author
Forward
0 new messages