Cyclic dependency between feature and predictor class
You have two problems:

Technical problem: As 10xAI said in a comment, if the target also belongs to the features then the model should very easily predict every instance correctly. So you should obtain perfect performance on the test set. The ML model doesn't care about &quot;cyclic dependency&quot;, it uses any good indicator it receives as feature. Since you mention a reduction in accuracy, it means that there is an error somewhere in the process.
Semantic problem: which problem are you trying to solve with this ML setup? If the goal is to distinguish software vs. non-software and you have as input a category &quot;software&quot; then it's pointless to train a ML model. You can obtain the same result much more efficiently with a simple condition:

for each instance:
  if instance.category == &quot;software&quot;: 
     instance.answer=&quot;software&quot; 
  else:
     instance.answer=&quot;non-software&quot;